{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "7c4adca2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The autoreload extension is already loaded. To reload it, use:\n",
      "  %reload_ext autoreload\n"
     ]
    }
   ],
   "source": [
    "#| default_exp t2s_up_wds_mlang_enclm\n",
    "%load_ext autoreload\n",
    "%autoreload 2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0a853249",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| exporti\n",
    "import dataclasses\n",
    "import random\n",
    "import math\n",
    "import itertools\n",
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "from torch.profiler import record_function\n",
    "\n",
    "from huggingface_hub import hf_hub_download\n",
    "from fastcore.basics import store_attr\n",
    "from fastprogress import progress_bar\n",
    "\n",
    "from pathlib import Path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "2b289594",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| exporti\n",
    "from whisperspeech.modules import *\n",
    "from whisperspeech import languages"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "73c7d17d",
   "metadata": {},
   "outputs": [],
   "source": [
    "from whisperspeech.wer_metrics import *\n",
    "from whisperspeech.train import *\n",
    "\n",
    "from fastprogress import master_bar\n",
    "import webdataset as wds"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c22332b1",
   "metadata": {},
   "source": [
    "# Text to semantic tokens model\n",
    "\n",
    "Multi-GPU training example:\n",
    "\n",
    "    python3 -m whisperspeech.train_multi \\\n",
    "        --task \"t2s_up_wds base --frozen_embeddings_model vqmodel-256c-dim64-4e-hyptuned-32gpu.model\" \\\n",
    "        --input-dir \"whisperspeech-t2s-512c-dim64/*.tar.gz 600000 --vq_codes=513\"\n",
    "        --batch-size 32 --epochs 1 \\\n",
    "        --tunables=--cps_input"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b02bc209",
   "metadata": {},
   "source": [
    "# Dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "11d29bf3",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| exporti\n",
    "import re\n",
    "\n",
    "class CharTokenizer:\n",
    "    \"\"\"Trivial tokenizer – just use UTF-8 bytes\"\"\"\n",
    "    eot = 0\n",
    "    \n",
    "    def encode(self, txt):\n",
    "        return list(bytes(txt.strip(), 'utf-8'))\n",
    "\n",
    "    def decode(self, tokens):\n",
    "        return bytes(tokens).decode('utf-8')\n",
    "    \n",
    "def tokenizer(ikey, okey, length):\n",
    "    \"\"\"Tokenizes a transcript\"\"\"\n",
    "    tok = CharTokenizer()\n",
    "    def _tokenizer(samples):\n",
    "        for s in samples:\n",
    "            toks = torch.tensor(tok.encode(s[ikey]))\n",
    "            s[okey] = F.pad(toks, (0, length - toks.shape[-1]), value=tok.eot)\n",
    "            yield s\n",
    "    return _tokenizer\n",
    "\n",
    "def ar_padder(ikey, okey, length, pad_token):\n",
    "    \"\"\"Pads the tokens for autoregresive training\"\"\"\n",
    "    import numpy as np\n",
    "\n",
    "    def _ar_padder(samples):\n",
    "        for s in samples:\n",
    "            toks = s[ikey]\n",
    "            if isinstance(toks, (list, np.ndarray)): toks = torch.tensor(toks)\n",
    "            toks = toks.to(torch.long)\n",
    "            s['in_' +okey] = F.pad(toks, (1, length - toks.shape[-1] - 1), value=pad_token)\n",
    "            s['out_'+okey] = F.pad(toks, (0, length - toks.shape[-1]), value=pad_token)\n",
    "            yield s\n",
    "    return _ar_padder\n",
    "\n",
    "def char_per_seconder(txt_key, stoks_key, cps_key, stoks_per_second=25):\n",
    "    \"\"\"Adds the characters per second metric to the input data\"\"\"\n",
    "    def _char_per_seconder(samples):\n",
    "        for s in samples:\n",
    "            secs = s[stoks_key].shape[-1] / stoks_per_second\n",
    "            s[cps_key] = len(s[txt_key]) / secs\n",
    "            yield s\n",
    "    return _char_per_seconder"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "9899457b",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "def load_dataset(\n",
    "    txt_shard_spec:str,    # transcription webdataset shards\n",
    "    stoks_shard_dir:str,   # stoks webdataset base dir\n",
    "    samples:int,           # samples per epoch\n",
    "    txt_kind:str='small.en-txt',\n",
    "    vq_codes:int=4096,\n",
    "    language:str='en',\n",
    "    weight:float=1,\n",
    "    validation:bool=False,\n",
    "    exclude_files:str=None,\n",
    "):\n",
    "    import webdataset as wds\n",
    "    from whisperspeech import utils\n",
    "\n",
    "    shards = utils.shard_glob(txt_shard_spec)\n",
    "    excludes = {x for file in exclude_files.split() for x in utils.readlines(file)} if exclude_files else set()\n",
    "    \n",
    "    language = languages.to_id(language)\n",
    "    \n",
    "    def set_language(x):\n",
    "        x['language'] = language\n",
    "        return x\n",
    "    \n",
    "    same_on_all_nodes = lambda urls: urls # will only be used for validation\n",
    "    ds = wds.WebDataset(shards, resampled=not validation, nodesplitter=same_on_all_nodes).compose(\n",
    "        wds.decode(),\n",
    "        utils.merge_in(utils.derived_dataset('eqvad-stoks', base=txt_kind, suffix='', dir=stoks_shard_dir)),\n",
    "        # discard validation samples, select samples > .5s\n",
    "        wds.select(lambda s: s['__key__'] not in excludes and s['stoks.npy'].shape[-1] > 12),\n",
    "        tokenizer('txt', 'ttoks', length=550),\n",
    "        ar_padder('stoks.npy', 'stoks', length=750, pad_token=vq_codes-1),\n",
    "        ar_padder('ttoks', 'ttoks', length=550, pad_token=CharTokenizer.eot),\n",
    "        char_per_seconder('txt', 'stoks.npy', 'cps', stoks_per_second=25),\n",
    "        wds.map(set_language),\n",
    "        wds.to_tuple('in_ttoks', 'out_ttoks', 'language', 'cps', 'in_stoks', 'out_stoks'),\n",
    "        wds.shuffle(20000, initial=20000),\n",
    "        wds.batched(64)\n",
    "    )\n",
    "    if validation:\n",
    "        ds = ds.slice(samples // 64)\n",
    "    ds.total_samples = samples\n",
    "    ds.stoks_len = 750\n",
    "    ds.stoks_codes = vq_codes\n",
    "    ds.ttoks_len = 550\n",
    "    ds.weight = weight\n",
    "\n",
    "    return ds"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d2cc12e0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Automatic pdb calling has been turned OFF\n"
     ]
    }
   ],
   "source": [
    "%pdb"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "635b477d",
   "metadata": {},
   "outputs": [],
   "source": [
    "train_ds = load_dataset('../wolnelektury-wds2/wolnelektury-medium-txt-*.tar.gz', '../wolnelektury-vqv2/', 190000,\n",
    "                        txt_kind='medium-txt', vq_codes=512, language='pl',\n",
    "                        exclude_files='../wolnelektury-wds2/validation-samples')\n",
    "val_ds = load_dataset('../wolnelektury-wds2/validation-eqvad.tar.gz', '../wolnelektury-vqv2/', 520,\n",
    "                      txt_kind='medium-txt', vq_codes=512, language='pl', validation=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "86e7d590",
   "metadata": {},
   "outputs": [],
   "source": [
    "train_ds = load_dataset('../librilight/librilight-medium-small.en-txt-*.tar.gz', '../librilight-vq-en+pl/', 190000,\n",
    "                        txt_kind='small.en-txt', vq_codes=512, language='en',\n",
    "                        exclude_files='')\n",
    "val_ds = load_dataset('../librilight/librilight-medium-small.en-txt-000000.tar.gz', '../librilight-vq-en+pl/', 512,\n",
    "                      txt_kind='small.en-txt', vq_codes=512, language='en', validation=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "88d39875",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='100' class='' max='100' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [100/100 00:01&lt;00:00]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[tensor([[  0,  83, 117,  ...,   0,   0,   0],\n",
       "         [  0,  73, 102,  ...,   0,   0,   0],\n",
       "         [  0,  72, 111,  ...,   0,   0,   0],\n",
       "         ...,\n",
       "         [  0,  70, 111,  ...,   0,   0,   0],\n",
       "         [  0,  83, 105,  ...,   0,   0,   0],\n",
       "         [  0,  97, 110,  ...,   0,   0,   0]]),\n",
       " tensor([[ 83, 117,  99,  ...,   0,   0,   0],\n",
       "         [ 73, 102,  32,  ...,   0,   0,   0],\n",
       "         [ 72, 111, 119,  ...,   0,   0,   0],\n",
       "         ...,\n",
       "         [ 70, 111, 114,  ...,   0,   0,   0],\n",
       "         [ 83, 105, 114,  ...,   0,   0,   0],\n",
       "         [ 97, 110, 100,  ...,   0,   0,   0]]),\n",
       " array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]),\n",
       " array([15.20912548, 15.37558685, 14.93775934, 15.3280543 , 14.52830189,\n",
       "        11.8       , 16.25615764, 13.63636364, 10.37037037, 13.24451411,\n",
       "        12.83497884, 13.65582192, 12.32091691, 15.17241379, 13.61236802,\n",
       "        14.93055556, 11.51639344, 11.33633634, 10.5125523 , 12.17105263,\n",
       "        12.12374582, 13.22869955, 12.79434851, 15.33957845, 13.87262079,\n",
       "        12.99342105, 14.13043478, 14.77832512,  8.81849315, 13.0075188 ,\n",
       "        12.39130435, 15.65934066, 15.02192982, 12.98701299, 17.10526316,\n",
       "        17.92035398, 10.28963415,  6.77710843,  9.48275862, 15.625     ,\n",
       "        12.84916201, 10.42993631, 17.2439759 , 18.32706767, 16.6893733 ,\n",
       "        17.83333333, 19.2       , 16.96035242, 16.05504587, 15.6167979 ,\n",
       "        16.57894737, 16.24830393, 15.56737589, 14.63709677, 17.83216783,\n",
       "        14.82263514, 13.99371069, 14.60980036, 14.78494624, 14.66666667,\n",
       "        14.22413793, 14.14092664, 14.48801743, 16.21287129]),\n",
       " tensor([[511, 335, 135,  ..., 511, 511, 511],\n",
       "         [511, 309, 240,  ..., 511, 511, 511],\n",
       "         [511, 418, 191,  ..., 511, 511, 511],\n",
       "         ...,\n",
       "         [511, 153, 100,  ..., 511, 511, 511],\n",
       "         [511, 309,  51,  ..., 511, 511, 511],\n",
       "         [511, 206, 486,  ..., 511, 511, 511]]),\n",
       " tensor([[335, 135, 135,  ..., 511, 511, 511],\n",
       "         [309, 240, 240,  ..., 511, 511, 511],\n",
       "         [418, 191, 191,  ..., 511, 511, 511],\n",
       "         ...,\n",
       "         [153, 100, 100,  ..., 511, 511, 511],\n",
       "         [309,  51, 268,  ..., 511, 511, 511],\n",
       "         [206, 486, 160,  ..., 511, 511, 511]])]"
      ]
     },
     "execution_count": null,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "for x in progress_bar(train_ds, total=100): pass\n",
    "x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bb850d31",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='8' class='' max='8' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [8/8 00:00&lt;00:00]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[tensor([[  0,  73,  32,  ...,   0,   0,   0],\n",
       "         [  0,  66, 101,  ...,   0,   0,   0],\n",
       "         [  0,  84, 104,  ...,   0,   0,   0],\n",
       "         ...,\n",
       "         [  0,  65, 110,  ...,   0,   0,   0],\n",
       "         [  0,  77, 105,  ...,   0,   0,   0],\n",
       "         [  0,  69, 110,  ...,   0,   0,   0]]),\n",
       " tensor([[ 73,  32, 115,  ...,   0,   0,   0],\n",
       "         [ 66, 101, 102,  ...,   0,   0,   0],\n",
       "         [ 84, 104,  97,  ...,   0,   0,   0],\n",
       "         ...,\n",
       "         [ 65, 110, 100,  ...,   0,   0,   0],\n",
       "         [ 77, 105, 115,  ...,   0,   0,   0],\n",
       "         [ 69, 110, 100,  ...,   0,   0,   0]]),\n",
       " array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]),\n",
       " array([14.30555556, 16.02040816, 15.10752688, 15.43696275, 15.34749035,\n",
       "        15.30612245, 16.00529101, 16.10898662, 13.84920635, 14.84771574,\n",
       "        14.93453355, 15.77134986, 16.34887006, 15.625     , 15.27131783,\n",
       "        16.68490153, 14.34931507,  2.75482094, 15.79949239, 15.50991501,\n",
       "        16.43026005, 15.51724138, 15.8008658 , 13.80718954, 15.17482517,\n",
       "        19.04145078, 15.9733777 , 15.8872077 , 15.82397004, 16.42754663,\n",
       "        16.79810726, 16.33959044, 16.09848485, 17.43772242, 15.86687307,\n",
       "        16.894061  , 15.96385542, 15.74074074, 16.57239819, 16.14832536,\n",
       "        16.41221374, 15.53398058, 14.9103139 , 16.5922619 , 16.82489451,\n",
       "        17.57679181, 16.2       , 17.46031746, 16.39105058, 17.6182708 ,\n",
       "        18.16939891, 17.67399267, 11.58038147, 17.53846154, 17.35197368,\n",
       "        18.87755102, 16.39433551, 16.56021898, 16.20192308, 16.40759931,\n",
       "        17.21991701, 15.91591592, 17.33021077, 15.        ]),\n",
       " tensor([[511, 400, 400,  ..., 511, 511, 511],\n",
       "         [511, 206,  38,  ..., 511, 511, 511],\n",
       "         [511, 206, 465,  ..., 511, 511, 511],\n",
       "         ...,\n",
       "         [511,  19, 486,  ..., 511, 511, 511],\n",
       "         [511, 206, 452,  ..., 511, 511, 511],\n",
       "         [511, 398,  59,  ..., 511, 511, 511]]),\n",
       " tensor([[400, 400, 400,  ..., 511, 511, 511],\n",
       "         [206,  38,  38,  ..., 511, 511, 511],\n",
       "         [206, 465, 440,  ..., 511, 511, 511],\n",
       "         ...,\n",
       "         [ 19, 486, 150,  ..., 511, 511, 511],\n",
       "         [206, 452, 450,  ..., 511, 511, 511],\n",
       "         [398,  59, 391,  ..., 511, 511, 511]])]"
      ]
     },
     "execution_count": null,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "for x in progress_bar(val_ds, total='noinfer'): pass\n",
    "x"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7585288c",
   "metadata": {},
   "source": [
    "# Modeling"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c0ca5e87",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "def rand(start, end):\n",
    "    return random.random() * (end - start) + start\n",
    "\n",
    "@dataclasses.dataclass\n",
    "class Tunables:\n",
    "    init_std :float = 1\n",
    "    embeddings_std :float = .01\n",
    "    embeddings_lr_scale: float = 5\n",
    "    embedding_projector_lr_scale: float = 2.5\n",
    "    output_mult :float = .35\n",
    "    query_mult :float = 1\n",
    "    encoder_depth_ratio :float = 0.25\n",
    "    eot_dropout_p :float = .5\n",
    "    cps_input: bool = True\n",
    "    cps_bins: int = 32\n",
    "        \n",
    "    lr0 :float = 1.5e-3\n",
    "    clip_gradient_norm :float = .2\n",
    "    weight_decay :float = 1e-1\n",
    "    warmup_steps :float = 4000\n",
    "\n",
    "    random :bool = False\n",
    "\n",
    "    def __post_init__(self):\n",
    "        # randomize the hyperparams if requested\n",
    "        if self.random:\n",
    "            self.init_std = 10**rand(-1,1)\n",
    "            self.embeddings_std = 10**rand(-3,-.7)\n",
    "            self.embeddings_lr_scale = rand(2,6)\n",
    "            self.output_mult = rand(0.25,0.65)\n",
    "            self.query_mult = 2**rand(-2,3)\n",
    "            self.encoder_depth_ratio = 0.25\n",
    "            \n",
    "            self.lr0 = rand(1,5)*1e-3\n",
    "            self.clip_gradient_norm = 10**rand(-3,0)\n",
    "            self.warmup_steps = 100*(10**rand(1,1.85))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "8c4d3fa6",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "class T2SEmbedding(nn.Module):\n",
    "    def __init__(self, length=1500, codes=1024, width=384, pos_embs=None, stoks_width=384):\n",
    "        super().__init__()\n",
    "        self.embedding = FlexEmbeddings(codes, width, special_codes=1, frozen_width=stoks_width)\n",
    "        if pos_embs is None: pos_embs = sinusoids(length, width)\n",
    "        self.register_buffer(\"positional_embedding\", pos_embs)\n",
    "    \n",
    "    def forward(self, Stoks, xenc, cps=None, offset=0):\n",
    "        Sembs = self.embedding(Stoks)\n",
    "        xin = (Sembs + self.positional_embedding[offset : offset + Sembs.shape[1]]).to(xenc.dtype)\n",
    "        if cps is not None: xin = xin + cps\n",
    "        return xin, offset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "4776e8d7",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "class Encoder(nn.Module):\n",
    "    def __init__(self, depth=6, width=384, n_head=6, length=1500, codes=1024, emb_width=384, ffn_mult=4, pos_embs=None, tunables=Tunables()):\n",
    "        super().__init__()\n",
    "        self.emb_width = emb_width\n",
    "        \n",
    "        self.embedding = FlexEmbeddings(codes, width, frozen_width=emb_width)\n",
    "\n",
    "        if pos_embs is None: pos_embs = sinusoids(length, width)\n",
    "        self.register_buffer(\"positional_embedding\", pos_embs)\n",
    "\n",
    "        self.layers = nn.ModuleList([\n",
    "            ResidualAttentionBlock(width, n_head,\n",
    "                                   qk_scale=tunables.query_mult*8/math.sqrt(width/n_head), ffn_mult=ffn_mult) for _ in range(depth)\n",
    "        ])\n",
    "\n",
    "        self.ln_post = LayerNorm(width)\n",
    "        \n",
    "        mask = torch.empty(length, length).fill_(-torch.inf).triu_(1)\n",
    "        self.register_buffer(\"mask\", mask, persistent=False)\n",
    "        \n",
    "    def forward(self, Stoks, positions, lang_emb=None):\n",
    "        xin = self.embedding(Stoks)\n",
    "\n",
    "        if lang_emb is not None: xin += lang_emb\n",
    "        \n",
    "#         assert xin.shape[1:] == self.positional_embedding.shape, \"incorrect semantic token shape\"\n",
    "        x = (xin +\n",
    "             self.positional_embedding[positions]).to(xin.dtype)\n",
    "\n",
    "        for l in self.layers: x = l(x, positions, causal=False, mask=self.mask)\n",
    "        \n",
    "        return self.ln_post(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "159774b6",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "class TSARTransformer(nn.Module):\n",
    "    def __init__(self, depth=6, n_head=6, head_width=64, ffn_mult=4,\n",
    "                 ttoks_len=200, ttoks_codes=256, ttoks_width=None,\n",
    "                 stoks_len=1500, stoks_codes=1024, stoks_width=None,\n",
    "                 tunables=Tunables()):\n",
    "        super().__init__()\n",
    "        store_attr(\"depth,n_head,head_width,ffn_mult,stoks_width,ttoks_width,ttoks_len,stoks_len,ttoks_codes,stoks_codes\")\n",
    "\n",
    "        width = n_head * head_width\n",
    "        self.width = width\n",
    "        self.base_width = 3 * head_width\n",
    "        self.tunables = tunables\n",
    "        if self.stoks_width is None: self.stoks_width = self.width\n",
    "        if self.ttoks_width is None: self.ttoks_width = self.width\n",
    "        \n",
    "        self.lang_embeddings = nn.Embedding(len(languages.languages), width)\n",
    "        if tunables.cps_input:\n",
    "            self.cps_embeddings = nn.Embedding(tunables.cps_bins, self.width)\n",
    "        else:\n",
    "            self.cps_embeddings = None        \n",
    "        \n",
    "        encoder_depth = int(depth * 2 * tunables.encoder_depth_ratio)\n",
    "        decoder_depth = depth * 2 - encoder_depth\n",
    "        tformer_args = dict(width=width, n_head=n_head, ffn_mult=ffn_mult, tunables=tunables)\n",
    "        self.encoder = Encoder(length=ttoks_len, codes=ttoks_codes, emb_width=self.ttoks_width, depth=encoder_depth, **tformer_args)\n",
    "        self.embeddings = T2SEmbedding(length=stoks_len, codes=stoks_codes, width=width, stoks_width=self.stoks_width)\n",
    "\n",
    "        self.decoder = BaseDecoder(\n",
    "            length=stoks_len, \n",
    "            depth=decoder_depth,\n",
    "            qk_scale=tunables.query_mult*8/math.sqrt(width/n_head),\n",
    "            width=width, n_head=n_head, ffn_mult=ffn_mult,\n",
    "        )\n",
    "        self.tokenizer = None\n",
    "        \n",
    "        self.apply(self.init_transformer)\n",
    "\n",
    "    def load_frozen_semantic_embeddings(self, vqmodel):\n",
    "        self.embeddings.embedding.set_frozen_embeddings(vqmodel.rq.layers[0]._codebook.embed[0])\n",
    "\n",
    "    def setup(self, device):\n",
    "        pass\n",
    "\n",
    "    def init_transformer(self, m):\n",
    "        if isinstance(m, LinearHead):\n",
    "            m.no_weight_decay = True\n",
    "            torch.nn.init.constant_(m.weight, 0)\n",
    "        elif isinstance(m, QueryHead):\n",
    "            m.lr_scale = 1/(m.weight.shape[1] / self.base_width)\n",
    "            torch.nn.init.constant_(m.weight, 0)\n",
    "        elif isinstance(m, nn.Embedding):\n",
    "            m.no_weight_decay = True\n",
    "            m.lr_scale = self.tunables.embeddings_lr_scale\n",
    "            std = self.tunables.embeddings_std\n",
    "            torch.nn.init.trunc_normal_(m.weight, std=std, a=-3*std, b=3*std)\n",
    "        elif isinstance(m, EmbeddingProjector):\n",
    "            m.lr_scale = self.tunables.embedding_projector_lr_scale\n",
    "            std = self.tunables.init_std\n",
    "            torch.nn.init.trunc_normal_(m.weight, std=std, a=-3*std, b=3*std)\n",
    "        elif isinstance(m, nn.Linear):\n",
    "            m.lr_scale = 1/(m.weight.shape[1] / self.base_width)\n",
    "            std = self.tunables.init_std / m.weight.shape[1]\n",
    "            torch.nn.init.trunc_normal_(m.weight, std=std, a=-3*std, b=3*std)\n",
    "            if m.bias is not None:\n",
    "                torch.nn.init.trunc_normal_(m.bias, std=std, a=-3*std, b=3*std)\n",
    "        elif isinstance(m, nn.LayerNorm):\n",
    "            m.no_weight_decay = True\n",
    "            torch.nn.init.constant_(m.bias, 0)\n",
    "            torch.nn.init.constant_(m.weight, 1)\n",
    "    \n",
    "    def _embed_cps(self, cpss):\n",
    "        if self.cps_embeddings is None: return None\n",
    "\n",
    "        cps_bin = (cpss / 20 * self.tunables.cps_bins).to(torch.long)\n",
    "        cps_bin[cps_bin >= self.tunables.cps_bins] = self.tunables.cps_bins-1\n",
    "        return self.cps_embeddings(cps_bin).unsqueeze(1)\n",
    "\n",
    "    def run_encoder(self, in_ttoks, languages, cpss):\n",
    "        if len(languages.shape) != 3: lang_embs = self.lang_embeddings(languages)\n",
    "        else: lang_embs = languages\n",
    "        if len(lang_embs.shape) == 2: lang_embs = lang_embs.unsqueeze(1)\n",
    "        \n",
    "        cps_emb = self._embed_cps(cpss)\n",
    "\n",
    "        with record_function(\"encoder\"):\n",
    "            positions = torch.arange(0, in_ttoks.shape[1], device=in_ttoks.device)\n",
    "            xenc = self.encoder(in_ttoks.to(torch.long), positions, lang_emb=lang_embs)\n",
    "\n",
    "        return xenc, positions, cps_emb\n",
    "    \n",
    "    def forward(self, in_ttoks, out_ttoks, languages, cpss, in_stoks, in_stoks_positions, out_stoks=None, loss=True, offset=None, xenc=None, xenc_positions=None, cps_emb=None):\n",
    "        if xenc is None:\n",
    "            xenc, cps_emb = self.run_encoder(in_ttoks, languages, cpss)\n",
    "\n",
    "        with record_function(\"decoder\"):\n",
    "            x = (self.embeddings.embedding(in_stoks) + \n",
    "                 self.embeddings.positional_embedding[in_stoks_positions] +\n",
    "                 cps_emb).to(xenc[0].dtype)\n",
    "            x = self.decoder(x, in_stoks_positions, xenc, xenc_positions)\n",
    "            logits = self.embeddings.embedding.unembed(x)\n",
    "            logits = logits * self.tunables.output_mult / (self.width / self.base_width)\n",
    "\n",
    "        if loss is not None:\n",
    "            enc_logits = self.encoder.embedding.unembed(xenc[0])\n",
    "            enc_logits = enc_logits * self.tunables.output_mult / (self.width / self.base_width)\n",
    "            with record_function(\"loss\"):\n",
    "                loss = F.cross_entropy(logits.transpose(-1,-2), out_stoks)\n",
    "                if self.training:\n",
    "                    loss += 0.1 * F.cross_entropy(enc_logits.transpose(-1,-2), out_ttoks)\n",
    "                \n",
    "        return logits, loss\n",
    "\n",
    "    #\n",
    "    # inference\n",
    "    #\n",
    "    @classmethod\n",
    "    def load_model(cls, ref=\"collabora/whisperspeech:t2s-small-en+pl.model\",\n",
    "                   repo_id=None, filename=None, local_filename=None):\n",
    "        if repo_id is None and filename is None and local_filename is None:\n",
    "            if \":\" in ref:\n",
    "                repo_id, filename = ref.split(\":\", 1)\n",
    "            else:\n",
    "                local_filename = ref\n",
    "        if not local_filename:\n",
    "            local_filename = hf_hub_download(repo_id=repo_id, filename=filename)\n",
    "        spec = torch.load(local_filename)\n",
    "        model = cls(**spec['config'], tunables=Tunables(**spec['tunables']))\n",
    "        model.load_state_dict(spec['state_dict'])\n",
    "        model.eval()\n",
    "        return model\n",
    "\n",
    "    def load_checkpoint(self, local_filename):\n",
    "        spec = torch.load(local_filename, map_location='cpu')\n",
    "        assert 'pytorch-lightning_version' in spec, 'not a valid PyTorch Lightning checkpoint'\n",
    "        state_dict = {k.replace('model.', ''):v\n",
    "                      for k,v in spec['state_dict'].items()}\n",
    "        self.load_state_dict(state_dict)\n",
    "        return self\n",
    "\n",
    "    def save_model(self, fname):\n",
    "        torch.save(dict(config = self.__stored_args__,\n",
    "                        tunables = dataclasses.asdict(self.tunables),\n",
    "                        state_dict = self.state_dict()), fname)\n",
    "\n",
    "    def ensure_tokenizer(self):\n",
    "        assert not self.training\n",
    "        if self.tokenizer is None: self.tokenizer = CharTokenizer()\n",
    "\n",
    "    def switch_dtypes(self, dtype=torch.float16):\n",
    "        self.dtype = dtype\n",
    "        for n,m in self.named_modules():\n",
    "            # convert every leaf layer apart from the LayerNorms\n",
    "            if isinstance(m, (nn.Linear, nn.Embedding)):\n",
    "                m.to(dtype)\n",
    "            # take care of buffers ([kv]_cache, masks) that are not in the leaf layers\n",
    "            for bn,b in m.named_buffers(recurse=False):\n",
    "                setattr(m,bn,b.to(dtype))\n",
    "\n",
    "    def optimize(self, max_batch_size=1, dtype=torch.float16, torch_compile=True):\n",
    "        for emb in [self.embeddings.embedding, self.embeddings.embedding]:\n",
    "            emb.convert_for_eval()\n",
    "        for l in self.encoder.layers:\n",
    "            l.attn.convert_for_eval()\n",
    "        for l in self.decoder.layers:\n",
    "            l.attn.convert_for_eval()\n",
    "            l.cross_attn.convert_for_eval()\n",
    "            l.setup_kv_cache(max_batch_size, self.stoks_len, self.ttoks_len)\n",
    "        self.switch_dtypes(dtype)\n",
    "        if torch_compile:\n",
    "            self.generate_next = torch.compile(self.generate_next, mode=\"reduce-overhead\", fullgraph=True)\n",
    "\n",
    "    @property\n",
    "    def device(self):\n",
    "        return next(self.parameters()).device\n",
    "        \n",
    "    # from https://github.com/pytorch-labs/gpt-fast/blob/main/generate.py\n",
    "    def multinomial_sample_one_no_sync(self, probs_sort): # Does multinomial sampling without a cuda synchronization\n",
    "        q = torch.empty_like(probs_sort).exponential_(1)\n",
    "        return torch.argmax(probs_sort / q, dim=-1, keepdim=True).to(dtype=torch.int)\n",
    "\n",
    "    def logits_to_probs(self, logits, T=1.0, top_k=None):\n",
    "        logits = logits / max(T, 1e-5)\n",
    "\n",
    "        logits[self.embeddings.embedding.codes:] = -torch.inf\n",
    "        if top_k is not None:\n",
    "            v, _ = torch.topk(logits, min(top_k, logits.size(-1)))\n",
    "            pivot = v.select(-1, -1).unsqueeze(-1)\n",
    "            logits = torch.where(logits < pivot, -float(\"Inf\"), logits)\n",
    "\n",
    "        probs = torch.nn.functional.softmax(logits, dim=-1)\n",
    "        return probs\n",
    "\n",
    "    def sample(self, logits, T=1.0, top_k=None):\n",
    "        probs = self.logits_to_probs(logits[0,-1], T, top_k)\n",
    "        idx_next = self.multinomial_sample_one_no_sync(probs)\n",
    "        return idx_next\n",
    "\n",
    "    def generate_one(self, toks, toks_positions, cps_emb, xenc, xenc_positions, T, top_k):\n",
    "        probs, _ = self(None, None, None, None, toks, toks_positions, loss=None, xenc=xenc, xenc_positions=xenc_positions, cps_emb=cps_emb)\n",
    "        return self.sample(probs, T, top_k)\n",
    "\n",
    "    def generate_next(self, *args, **kwargs):\n",
    "        return self.generate_one(*args, **kwargs)\n",
    "\n",
    "    @torch.no_grad()\n",
    "    def prep(self, txt, cps=15, lang=\"en\"):\n",
    "        dev = self.device\n",
    "        ttoks = torch.tensor(self.tokenizer.encode(txt), device=dev)\n",
    "        ttoks = F.pad(ttoks, (0, self.ttoks_len - len(ttoks)), value=self.tokenizer.eot).unsqueeze(0)\n",
    "        cpss = torch.tensor([cps], device=dev)\n",
    "        langs = torch.tensor([languages.to_id(lang)], device=dev)\n",
    "        return ttoks, cpss, langs\n",
    "    \n",
    "    @torch.no_grad()\n",
    "    def generate(self, txt, cps=15, lang=\"en\", N=None, T=0.7, top_k=None, step=None, show_progress_bar=True):\n",
    "        self.ensure_tokenizer()\n",
    "        N = N or self.stoks_len\n",
    "        dev = self.device\n",
    "        ttoks = []\n",
    "        langs = []\n",
    "        if isinstance(lang, list):\n",
    "            lang0 = lang[0]\n",
    "            assert isinstance(txt, list), \"lang and txt have to be both lists or strings\"\n",
    "            for txt, lang in zip(txt, lang):\n",
    "                tt = self.tokenizer.encode(txt)\n",
    "                ttoks += tt\n",
    "                langs += [languages.to_id(lang)] * len(tt)\n",
    "        elif isinstance(lang, torch.Tensor):\n",
    "            langs = lang\n",
    "            ttoks = self.tokenizer.encode(txt)\n",
    "        else:\n",
    "            lang0 = lang\n",
    "            ttoks = self.tokenizer.encode(txt)\n",
    "            langs = torch.tensor([languages.to_id(lang)], device=dev).unsqueeze(0)\n",
    "        ttoks = torch.tensor(ttoks, device=dev)\n",
    "        ttoks = F.pad(ttoks, (1, self.ttoks_len - len(ttoks) - 1), value=self.tokenizer.eot).unsqueeze(0)\n",
    "        cpss = torch.tensor([cps], device=dev)\n",
    "        if not isinstance(langs, torch.Tensor):\n",
    "            langs = torch.tensor(langs, device=dev)\n",
    "            langs = F.pad(langs, (1, self.ttoks_len - len(langs) - 1), value=languages.to_id(lang0)).unsqueeze(0)\n",
    "        it = range(0,N-1)\n",
    "        if show_progress_bar: it = progress_bar(it)\n",
    "\n",
    "        toks = torch.zeros((1,N), dtype=torch.long, device=dev)\n",
    "        toks[:,0] = self.stoks_codes-1\n",
    "        toks_positions = torch.arange(N, device=dev)\n",
    "        with record_function(\"encode\"):\n",
    "            xenc, xenc_positions, cps_emb = self.run_encoder(ttoks, langs, cpss)\n",
    "            toks_positions = torch.arange(N+1, device=dev)\n",
    "        # contrary to S2A this model works without prefill and is actually a tiny bit faster\n",
    "        # with record_function(\"prefill\"):\n",
    "        #     toks[0,1] = self.generate_one(toks[:,:1], toks_positions[:1], cps_emb, xenc, xenc_positions, T, top_k)\n",
    "        with torch.backends.cuda.sdp_kernel(enable_flash=False, enable_mem_efficient=False, enable_math=True):\n",
    "            for i in it:\n",
    "                toks[0,i+1] = self.generate_next(toks[:,i:i+1], toks_positions[i:i+1], cps_emb, xenc, xenc_positions, T, top_k)\n",
    "                if i % 25 == 0 and toks[0,i+1] == self.stoks_codes-1: return toks[0,:i+1]\n",
    "\n",
    "                # for profiling, debugging or early exit\n",
    "                if step is not None: step()\n",
    "        return toks[0,:]\n",
    "    \n",
    "    @torch.no_grad()\n",
    "    def generate_batch(self, txts, N=None, T=1.1, top_k=7, show_progress_bar=True):\n",
    "        self.ensure_tokenizer()\n",
    "        N = self.stoks_len\n",
    "        dev = self.device\n",
    "        ttoks = []\n",
    "        for txt in txts:\n",
    "            ttoks_ = torch.tensor(self.tokenizer.encode(txt), device=dev)\n",
    "            ttoks_ = F.pad(ttoks_, (0, self.ttoks_len - len(ttoks_)), value=self.tokenizer.eot).unsqueeze(0)\n",
    "            ttoks.append(ttoks_)\n",
    "        ttoks = torch.cat(ttoks, dim=0)\n",
    "        toks = torch.zeros((len(ttoks),N), dtype=torch.long, device=dev)\n",
    "        it = range(N)\n",
    "        if show_progress_bar: it = progress_bar(it)\n",
    "        for i in it:\n",
    "            p, _ = self(ttoks, toks[:,:i], loss=None)\n",
    "            last_p = p[:,-1]\n",
    "            if top_k:\n",
    "                last_p[last_p < torch.topk(last_p, top_k).values[:,-1,None]] = -torch.inf\n",
    "            tok = torch.multinomial((last_p / float(T)).softmax(-1), 1)\n",
    "            toks[:,i] = tok[:,0]\n",
    "            if (toks[:,i] == self.stoks_codes-1).all(): return toks[:,:i]\n",
    "        return toks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e98060d6",
   "metadata": {},
   "outputs": [],
   "source": [
    "#| export\n",
    "def _make_model(size:str, tunables:Tunables=Tunables(), dataset=None, **kwargs):\n",
    "    kwargs = dict(stoks_len = dataset.stoks_len, ttoks_len = dataset.ttoks_len, tunables=tunables, **kwargs)\n",
    "    if 'stoks_codes' not in kwargs: kwargs['stoks_codes'] = dataset.stoks_codes\n",
    "    if size == 'micro':\n",
    "        return TSARTransformer(depth=2, n_head=3, ffn_mult=1, **kwargs)\n",
    "    if size == 'tiny':\n",
    "        return TSARTransformer(depth=4, n_head=6, **kwargs)\n",
    "    if size == 'base':\n",
    "        return TSARTransformer(depth=6, n_head=8, **kwargs)\n",
    "    if size == 'small':\n",
    "        return TSARTransformer(depth=12, n_head=12, **kwargs)\n",
    "    if size == 'small+':\n",
    "        return TSARTransformer(depth=12, n_head=16, **kwargs)\n",
    "    if size == 'medium':\n",
    "        return TSARTransformer(depth=24, n_head=16, **kwargs)\n",
    "\n",
    "def make_model(size:str, frozen_embeddings_model:str=None, tunables:Tunables=Tunables(), dataset:torch.utils.data.Dataset=None):\n",
    "    from whisperspeech import vq_stoks\n",
    "\n",
    "    if frozen_embeddings_model:\n",
    "        vqmodel = vq_stoks.RQBottleneckTransformer.load_model(frozen_embeddings_model)\n",
    "        model = _make_model(size, tunables, dataset, stoks_codes=vqmodel.vq_codes+1, stoks_width=vqmodel.rq.layers[0]._codebook.embed[0].shape[-1])\n",
    "        model.load_frozen_semantic_embeddings(vqmodel)\n",
    "    else:\n",
    "        model = _make_model(size, tunables, dataset, mode=mode)\n",
    "    return model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "947299df",
   "metadata": {},
   "outputs": [],
   "source": [
    "model = make_model('small', frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', dataset=val_ds)\n",
    "model.load_checkpoint('../t2s_up_wds_mlang_enclm-ryan_cadetblue-5-61631-acc=0.50.ckpt')\n",
    "model.save_model('t2s-small-en+pl-ryan_cadetblue.model')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "16c5b305",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "TSARTransformer(\n",
       "  (lang_embeddings): Embedding(99, 768)\n",
       "  (cps_embeddings): Embedding(32, 768)\n",
       "  (encoder): Encoder(\n",
       "    (embedding): FlexEmbeddings(\n",
       "      (main): Embedding(256, 768)\n",
       "    )\n",
       "    (layers): ModuleList(\n",
       "      (0-5): 6 x ResidualAttentionBlock(\n",
       "        (attn): MultiHeadAttention(\n",
       "          (query): QueryHead(in_features=768, out_features=768, bias=True)\n",
       "          (key): Linear(in_features=768, out_features=768, bias=False)\n",
       "          (value): Linear(in_features=768, out_features=768, bias=True)\n",
       "          (out): Linear(in_features=768, out_features=768, bias=True)\n",
       "        )\n",
       "        (attn_ln): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "        (mlp): Sequential(\n",
       "          (0): Linear(in_features=768, out_features=3072, bias=True)\n",
       "          (1): GELU(approximate='none')\n",
       "          (2): Linear(in_features=3072, out_features=768, bias=True)\n",
       "        )\n",
       "        (mlp_ln): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "      )\n",
       "    )\n",
       "    (ln_post): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "  )\n",
       "  (decoder): Decoder(\n",
       "    (embedding): FlexEmbeddings(\n",
       "      (main): Embedding(513, 64)\n",
       "      (emb_to_hidden): EmbeddingProjector(in_features=64, out_features=768, bias=True)\n",
       "      (hidden_to_emb): EmbeddingProjector(in_features=768, out_features=64, bias=True)\n",
       "      (special): Embedding(1, 768)\n",
       "    )\n",
       "    (layers): ModuleList(\n",
       "      (0-17): 18 x ResidualAttentionBlock(\n",
       "        (attn): MultiHeadAttention(\n",
       "          (query): QueryHead(in_features=768, out_features=768, bias=True)\n",
       "          (key): Linear(in_features=768, out_features=768, bias=False)\n",
       "          (value): Linear(in_features=768, out_features=768, bias=True)\n",
       "          (out): Linear(in_features=768, out_features=768, bias=True)\n",
       "        )\n",
       "        (attn_ln): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "        (cross_attn): MultiHeadAttention(\n",
       "          (query): QueryHead(in_features=768, out_features=768, bias=True)\n",
       "          (key): Linear(in_features=768, out_features=768, bias=False)\n",
       "          (value): Linear(in_features=768, out_features=768, bias=True)\n",
       "          (out): Linear(in_features=768, out_features=768, bias=True)\n",
       "        )\n",
       "        (cross_attn_ln): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "        (mlp): Sequential(\n",
       "          (0): Linear(in_features=768, out_features=3072, bias=True)\n",
       "          (1): GELU(approximate='none')\n",
       "          (2): Linear(in_features=3072, out_features=768, bias=True)\n",
       "        )\n",
       "        (mlp_ln): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "      )\n",
       "    )\n",
       "    (ln_post): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n",
       "  )\n",
       ")"
      ]
     },
     "execution_count": null,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e23e1860",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='2' class='' max='2' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [2/2 12:45&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>1.81118</td>\n",
       "      <td>1.68061</td>\n",
       "      <td>02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>1.69434</td>\n",
       "      <td>1.48629</td>\n",
       "      <td>04:14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.59371</td>\n",
       "      <td>1.40083</td>\n",
       "      <td>06:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.51022</td>\n",
       "      <td>1.34603</td>\n",
       "      <td>08:29</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.49748</td>\n",
       "      <td>1.31845</td>\n",
       "      <td>10:38</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>299968</td>\n",
       "      <td>1.43387</td>\n",
       "      <td>1.30509</td>\n",
       "      <td>12:45</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 06:22&lt;00:00 #149984/150000 loss: 1.434 / 1.305]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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q6vTqVOnVFRUlO7mIA04B8A5AM4BcA6gu7tbs2fPjmWETJAVocvhsC9NKy4u5j8uqKioiPNgmuMcAOcAOAfAOYBoRsgEmdMSAAAAAMhChC4AAAAASKGsCF1er1cPPPCAvF5vupuCNOI8AOcAOAfAOQDOAWTiOWCZTJpLEQAAAACyTFb0dAEAAABApiJ0AQAAAEAKEboAAAAAIIUIXQAAAACQQoQuAAAAAEihrAhdmzdv1pw5c5STk6N169bplVdeSXeTMAZ/+7d/K8uyEh6LFy+O7R8cHNTGjRtVXl6ugoIC/fEf/7Gam5sTjnHy5EndfPPNysvLU1VVlT796U8rGAwm1Hn++ed12WWXyev1asGCBXr00UdHtYVzaHL89re/1Tve8Q7V1tbKsiw98cQTCfuNMbr//vs1Y8YM5ebmasOGDTp06FBCnY6ODt12220qKipSSUmJ/s//+T/q7e1NqLNr1y69+c1vVk5Ojurq6vSlL31pVFsef/xxLV68WDk5OVq+fLmefvrpcbcF43e+c+DP//zPR30v3HDDDQl1OAemtk2bNmnNmjUqLCxUVVWV3v3ud+vgwYMJdTLp+38sbcH4jOUcuPbaa0d9F3zsYx9LqMM5MHV985vf1IoVK1RUVKSioiKtX79eP//5z2P7s/I7wExxjz32mPF4POY//uM/zN69e80dd9xhSkpKTHNzc7qbhvN44IEHzNKlS01jY2Ps0draGtv/sY99zNTV1ZktW7aY1157zVx55ZXmqquuiu0PBoNm2bJlZsOGDWb79u3m6aefNhUVFebee++N1Tl69KjJy8szd999t9m3b595+OGHjdPpNM8880ysDufQ5Hn66afN5z73OfOjH/3ISDI//vGPE/Z/8YtfNMXFxeaJJ54wO3fuNO985zvN3LlzzcDAQKzODTfcYFauXGleeukl87vf/c4sWLDAvO9974vt7+7uNtXV1ea2224ze/bsMd///vdNbm6u+da3vhWr88ILLxin02m+9KUvmX379pnPf/7zxu12m927d4+rLRi/850Dt99+u7nhhhsSvhc6OjoS6nAOTG3XX3+9+c///E+zZ88es2PHDnPTTTeZ2bNnm97e3lidTPr+P19bMH5jOQfe8pa3mDvuuCPhu6C7uzu2n3NgavvJT35ifvazn5k33njDHDx40Hz2s581brfb7NmzxxiT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",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline\n",
    "train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('tiny', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0/2, epochs=2,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "558a24b4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='2' class='' max='2' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [2/2 10:39&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>1.92771</td>\n",
       "      <td>2.02235</td>\n",
       "      <td>01:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>1.43315</td>\n",
       "      <td>1.58909</td>\n",
       "      <td>02:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.19694</td>\n",
       "      <td>1.22153</td>\n",
       "      <td>04:12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.08593</td>\n",
       "      <td>1.11246</td>\n",
       "      <td>05:36</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.08340</td>\n",
       "      <td>1.04531</td>\n",
       "      <td>07:00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>300000</td>\n",
       "      <td>1.02086</td>\n",
       "      <td>1.01358</td>\n",
       "      <td>08:24</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>350016</td>\n",
       "      <td>1.01914</td>\n",
       "      <td>0.99932</td>\n",
       "      <td>09:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>379968</td>\n",
       "      <td>1.07987</td>\n",
       "      <td>0.99130</td>\n",
       "      <td>10:39</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='5937' class='' max='5937' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [5937/5937 05:20&lt;00:00 #189984/190000 loss: 1.080 / 0.991]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0wAAAHmCAYAAABAhQ4WAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACOYUlEQVR4nOzdeXxcZaH/8c/sk33ftyZNt3SntKVsglQWcUFREFFxv2JRuCAK7sv14mVRVAp47/0pekVAEXADRMoOpS3d27Rp0ybN1uz7Nts5vz8mmSbNpGuSSZPvm9e8zpnnPOfMM3OYdr59znkei2maJiIiIiIiIjKCNdINEBERERERmawUmEREREREREahwCQiIiIiIjIKBSYREREREZFRKDCJiIiIiIiMQoFJRERERERkFApMIiIiIiIio7BHugETxTAM6urqiIuLw2KxRLo5IiIiIiISIaZp0tXVRXZ2NlbrsfuQpk1gqqurIy8vL9LNEBERERGRSaK6uprc3Nxj1pk2gSkuLg4Ifijx8fERbo2IiIiIiERKZ2cneXl5oYxwLNMmMA1ehhcfH6/AJCIiIiIiJ3SrjgZ9EBERERERGYUCk4iIiIiIyCgUmEREREREREahwCQiIiIiIjIKBSYREREREZFRKDCJiIiIiIiMQoFJRERERERkFApMIiIiIiIio1BgEhERERERGYUCk4iIiIiIyCimX2Bqq4p0C0RERERE5Awx/QJT64FIt0BERERERM4Q0y8wtVdHugUiIiIiInKGmH6BqaMm0i0QEREREZEzxDQMTOphEhERERGREzMNA5N6mERERERE5MQoMImIiIiIiIxi+gWm3ibw9UW6FSIiIiIicgaYfoEJ1MskIiIiIiInZHoGpvZDkW6BiIiIiIicAaZpYKqKdAtEREREROQMoMAkIiIiIiIyCgUmERERERGRUSgwiYiIiIiIjEKBSUREREREZBRnVGD60Ic+RFJSEh/5yEdO70DdDZqLSUREREREjuuMCkw333wzv/vd707vII6Y4FJzMYmIiIiIyHGcUYHpoosuIi4u7vQOkpAbXGouJhEREREROY4JC0yvvfYa73//+8nOzsZisfDMM8+MqLN27VpmzJiB2+1m5cqVbNy4cewbkpAXXOo+JhEREREROY4JC0w9PT0sXryYtWvXht3+xBNPcOutt/K9732PLVu2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up3b3jObc4tTI90kkUntZLKB/tlBRERE5AwX53bw7feVRLoZIlOSxpQUEREREREZhQKTiIiIiIjIKBSYRERERERERqHAJCIiIiIiMgoFJhERERERkVEoMImIiIiIiIxCgUlERERERGQUCkwiIiIiIiKjUGASEREREREZhQKTiIiIiIjIKKZ8YFq7di0lJSUsX7480k0REREREZEzjMU0TTPSjZgIHR0dJCYmUl1dTXx8fKSbIyIiIiIiEdLZ2UleXh7t7e0kJCQcs659gtoUcS0tLQDk5eVFuCUiIiIiIjIZdHV1KTANSk5OBqCqquq4H4pMnMF0r56/yUXnZXLSeZmcdF4mJ52XyUnnZXKajufFNE26urrIzs4+bt1pE5is1uDtWgkJCdPmf4QzSXx8vM7LJKTzMjnpvExOOi+Tk87L5KTzMjlNt/Nyop0oU37QBxERERERkVOlwCQiIiIiIjKKaROYXC4X3/ve93C5XJFuigyh8zI56bxMTjovk5POy+Sk8zI56bxMTjovxzZthhUXERERERE5WdOmh0lERERERORkKTCJiIiIiIiMQoFJRERERERkFApMIiIiIiIio1BgEhERERERGcW0CUxr165lxowZuN1uVq5cycaNGyPdpDPS97//fSwWy7DH3LlzQ9v7+/tZs2YNKSkpxMbGcvXVV9PQ0DDsGFVVVVx55ZVER0eTnp7O7bffjt/vH1bnlVde4ayzzsLlclFcXMwjjzwyoi3T+Zy+9tprvP/97yc7OxuLxcIzzzwzbLtpmnz3u98lKyuLqKgoVq9ezf79+4fVaW1t5frrryc+Pp7ExEQ+97nP0d3dPazOjh07uOCCC3C73eTl5XH33XePaMuf/vQn5s6di9vtZuHChTz77LMn3Zap4njn5dOf/vSI78/ll18+rI7Oy9i76667WL58OXFxcaSnp3PVVVdRVlY2rM5k+rPrRNoyFZzIebnoootGfGe+9KUvDauj8zK2HnroIRYtWkR8fDzx8fGsWrWK5557LrRd35XION550XdlnJnTwOOPP246nU7z17/+tbl7927zC1/4gpmYmGg2NDREumlnnO9973vm/PnzzcOHD4ceTU1Noe1f+tKXzLy8PHPdunXmO++8Y55zzjnmueeeG9ru9/vNBQsWmKtXrza3bt1qPvvss2Zqaqp55513huocPHjQjI6O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2rDDWk7nc9rV1WVu3brV3Lp1qwmYP/3pT82tW7eahw4dMk0zOGR0YmKi+Ze//MXcsWOH+cEPfjDssOJLly41N2zYYL7xxhvmrFmzhg1f3d7ebmZkZJif/OQnzV27dpmPP/64GR0dPWL4arvdbt57773mnj17zO9973thh68+XlumimOdl66uLvNrX/uauX79erOiosJ88cUXzbPOOsucNWuW2d/fHzqGzsvYu/HGG82EhATzlVdeGTbkbm9vb6jOZPqz63htmSqOd17Ky8vNH/7wh+Y777xjVlRUmH/5y1/MoqIi88ILLwwdQ+dl7N1xxx3mq6++alZUVJg7duww77jjDtNisZgvvPCCaZr6rkTKsc6Lvivjb1oEJtM0zV/+8pdmfn6+6XQ6zRUrVphvv/12pJt0Rrr22mvNrKws0+l0mjk5Oea1115rlpeXh7b39fWZX/7yl82kpCQzOjra/NCHPmQePnx42DEqKyvNK664woyKijJTU1PN2267zfT5fMPqvPzyy+aSJUtMp9NpFhUVmb/5zW9GtGU6n9OXX37ZBEY8brjhBtM0g8NGf+c73zEzMjJMl8tlXnLJJWZZWdmwY7S0tJjXXXedGRsba8bHx5uf+cxnzK6urmF1tm/fbp5//vmmy+Uyc3JyzJ/85Ccj2vLHP/7RnD17tul0Os358+eb//jHP4ZtP5G2TBXHOi+9vb3mpZdeaqalpZkOh8MsKCgwv/CFL4wI+TovYy/cOQGG/bkymf7sOpG2TAXHOy9VVVXmhRdeaCYnJ5sul8ssLi42b7/99mFzy5imzstY++xnP2sWFBSYTqfTTEtLMy+55JJQWDJNfVci5VjnRd+V8WcxTdOcuP4sERERERGRM8eUv4dJRERERETkVCkwiYiIiIiIjEKBSUREREREZBQKTCIiIiIiIqNQYBIRERERERmFApOIiIiIiMgoFJhERERERERGocAkIiIiIiIyCgUmERERERGRUSgwiYiIiIiIjEKBSUREREREZBQKTCIiIiIiIqNQYBIRERERERmFApOIiIiIiMgoFJhERERERERGocAkIiIiIiIyCgUmERERERGRUSgwiYiIiIiIjMIe6QZMFMMwqKurIy4uDovFEunmiIiIiIhIhJimSVdXF9nZ2Vitx+5DmjaBqa6ujry8vEg3Q0REREREJonq6mpyc3OPWWfa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",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline\n",
    "# train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('tiny', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0/2, epochs=2,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "63103e6d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='2' class='' max='2' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [2/2 12:31&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>1.78109</td>\n",
       "      <td>1.67754</td>\n",
       "      <td>02:05</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>1.86647</td>\n",
       "      <td>1.50500</td>\n",
       "      <td>04:10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.66956</td>\n",
       "      <td>1.40646</td>\n",
       "      <td>06:15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.48269</td>\n",
       "      <td>1.35387</td>\n",
       "      <td>08:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.44419</td>\n",
       "      <td>1.31720</td>\n",
       "      <td>10:26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>299968</td>\n",
       "      <td>1.47340</td>\n",
       "      <td>1.30115</td>\n",
       "      <td>12:31</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 06:15&lt;00:00 #149984/150000 loss: 1.473 / 1.301]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA10AAAHmCAYAAACI6eTAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB+r0lEQVR4nO3deWCcdYH/8c8zRyb35E6aNE3v+4LalqIcLpXTFVh1kUVl3RVXt6gsioIILLuuFU8UKrjrb2V3PUB0gRUBhQqCUBBK74veR9rc9zHJHN/fH8/MZCZJ26RNMpPJ+7U7Ps88z3ee+c5kGvKZ72UZY4wAAAAAAKPCkegKAAAAAEAqI3QBAAAAwCgidAEAAADAKCJ0AQAAAMAoInQBAAAAwCgidAEAAADAKCJ0AQAAAMAociW6AiMhFArp+PHjysnJkWVZia4OAAAAgAQxxqi9vV3l5eVyOJKjjSklQtfx48dVWVmZ6GoAAAAASBJHjx7V5MmTE10NSSkSunJyciTZb2xubm6CawMAAAAgUdra2lRZWRnNCMkgJUJXpEthbm4uoQsAAABAUg07So5OjgAAAACQoghdAAAAADCKCF0AAAAAMIoIXQAAAAAwighdAAAAADCKCF0AAAAAMIoIXQAAAAAwighdAAAAADCKCF0AAAAAMIoIXQAAAAAwilIrdO15NtE1AAAAAIA4qRW6jrye6BoAAAAAQJzUCl2t1YmuAQAAAADESa3Q1XYs0TUAAAAAgDipFbpo6QIAAACQZFIrdPmapd7ORNcCAAAAAKJSK3RJUitdDAEAAAAkj9QLXS1HE10DAAAAAIhKvdDVSugCAAAAkDwIXQAAAAAwilIwdDGmCwAAAEDySL3QxZguAAAAAEkk9UIXLV0AAAAAkkjqha62aikYSHQtAAAAAEBSkoWua6+9Vvn5+frQhz50ZhewXJIJSh01I1sxAAAAADhDSRW6Pv/5z+u///u/z/wC3nJ7y7guAAAAAEkiqULXxRdfrJycnDO/QG6FvWXaeAAAAABJYsRC18svv6y//Mu/VHl5uSzL0pNPPjmgzLp16zR16lSlp6dr5cqV+vOf/zxST2/LnWxvCV0AAAAAksSIha7Ozk4tWbJE69atG/T8Y489pltvvVX33HOP3n77bS1ZskSXXXaZ6urqhv1cPT09amtri7tJknLpXggAAAAguYxY6Lriiiv0ta99Tddee+2g57/73e/qpptu0ic+8QnNnz9fDz/8sDIzM/Wf//mfw36utWvXyuv1Rm+VlZX2CW+kpYtp4wEAAAAkhzEZ09Xb26uNGzdq9erVfU/scGj16tXasGHDsK93xx13qLW1NXo7ejTcssWYLgAAAABJxjUWT9LQ0KBgMKjS0tK446Wlpdq9e3f0/urVq7VlyxZ1dnZq8uTJevzxx7Vq1aoB1/N4PPJ4PAOfyBsJXcckYyTLGtHXAQAAAADDNSaha6heeOGFs7tAZExXb4fU3SxlFpx9pQAAAADgLIxJ98KioiI5nU7V1tbGHa+trVVZWdnIPZE7Q8oqtvcZ1wUAAAAgCYxJ6EpLS9OyZcu0fv366LFQKKT169cP2n3wrHjDk2owrgsAAABAEhix7oUdHR3at29f9P7Bgwe1efNmFRQUaMqUKbr11lt144036l3vepdWrFih+++/X52dnfrEJz4xUlWweSdLx9+mpQsAAABAUhix0PXWW2/pve99b/T+rbfeKkm68cYb9cgjj+i6665TfX297r77btXU1Gjp0qV67rnnBkyucdbyptjbliMje10AAAAAOAMjFrouvvhiGWNOWebmm2/WzTffPFJPObjoWl10LwQAAACQeGMypmtMRcd00b0QAAAAQOKlYOgKt3S10NIFAAAAIPFSL3RFxnR11kl+X2LrAgAAAGDCS73QlZEvuTPt/bbqxNYFAAAAwISXeqHLslirCwAAAEDSGNeha926dZo/f76WL18efyIvHLoY1wUAAAAgwcZ16FqzZo127typN998M/5EdNp4ZjAEAAAAkFjjOnSdFN0LAQAAACQJQhcAAAAAjKLUDF2M6QIAAACQJFIzdEXGdLVVS6FQYusCAAAAYEJLqdC1t7bd3skplyyHFOy1F0kGAAAAgARJqdD19NYT9o7TZQcviS6GAAAAABIqpULXgYaOvjt5TKYBAAAAIPFSK3TVd/bdia7VRegCAAAAkDgpFbqONnXJ5w/ad6LTxrNAMgAAAIDESanQFTLSocZwaxfTxgMAAABIAikVuiRpb214XBctXQAAAACSQOqFrrr+oetI4ioDAAAAYMJLudC1Pxq6whNp+FolX1viKgQAAABgQhvXoWvdunWaP3++li9fHj22ty68QLInW8rIt/fpYggAAAAgQcZ16FqzZo127typ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",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline + causal encoder\n",
    "train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('tiny', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0/2, epochs=2,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "8c9c9e5e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='2' class='' max='2' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [2/2 12:37&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>2.90977</td>\n",
       "      <td>2.62941</td>\n",
       "      <td>02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>2.21458</td>\n",
       "      <td>2.06109</td>\n",
       "      <td>04:13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.66289</td>\n",
       "      <td>1.63312</td>\n",
       "      <td>06:19</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.72132</td>\n",
       "      <td>1.50796</td>\n",
       "      <td>08:26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.64924</td>\n",
       "      <td>1.44136</td>\n",
       "      <td>10:32</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>299968</td>\n",
       "      <td>1.70916</td>\n",
       "      <td>1.41862</td>\n",
       "      <td>12:37</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 06:18&lt;00:00 #149984/150000 loss: 1.709 / 1.419]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA10AAAHmCAYAAACI6eTAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB/b0lEQVR4nO3dd2Ac5YE+/mdmu8qqd0tykSxblm1R3CiGBIMxkBCS3JEcIST3DSlncuEguUBCudwvdw6p5MAB7lLIHeEouQAJNWCKKaa6W8WWbBVbve2utNK2eX9/zO7srrSyJVurHa2ez91m2jsz766GtR6977wjCSEEiIiIiIiIKC7kRFeAiIiIiIgomTF0ERERERERxRFDFxERERERURwxdBEREREREcURQxcREREREVEcMXQRERERERHFEUMXERERERFRHBkTXYGZoCgKOjo6kJ6eDkmSEl0dIiIiIiJKECEEXC4XiouLIcv6aGNKitDV0dGB0tLSRFeDiIiIiIh0or29HQsWLEh0NQAkSehKT08HoH6wdrs9wbUhIiIiIqJEcTqdKC0t1TKCHiRF6Ap1KbTb7QxdRERERESkq9uO9NHJkYiIiIiIKEnN6dC1fft2VFdXY82aNYmuChERERERUUySEEIkuhJnyul0IiMjAw6Hg90LiYiIiIjmMT1mgznd0kVERERERKR3DF1ERERERERxxNBFREREREQURwxdREREREREccTQRUREREREFEcMXURERERERHHE0EVERERERBRHyRW6Gl9MdA2IiIiIiIiiJFfoan070TUgIiIiIiKKklyha+BoomtAREREREQUhaGLiIiIiIgojpIrdDmOA35PomtBRERERESkSa7QBQEMHEt0JYiIiIiIiDRJFroA9DclugZEREREREQahi4iIiIiIqI4YugiIiIiIiKKoyQMXc2JrgEREREREZEmCUMXW7qIiIiIiEg/ki90jfQAY45E14KIiIiIiAhAsoWu1Dx1yi6GRERERESkE8kVurIXq1OGLiIiIiIi0okkDV28r4uIiIiIiPSBoYuIiIiIiCiOGLqIiIiIiIjiKElDVzMgRGLrQkREREREhGQLXZllgCQDXhcw3JPo2hARERERESVZ6DJa1OAFsIshERERERHpQnKFLgDIqVCnDF1ERERERKQDDF1ERERERERxlMShiw9IJiIiIiKixEvC0LVEnbKli4iIiIiIdCAJQ1ewpWvgKKAEElsXIiIiIiKa95IvdNkXAAYLoPiAobZE14aIiIiIiOa55AtdshzRxZD3dRERERERUWIlX+gCeF8XERERERHpRpKGLg4bT0RERERE+sDQRUREREREFEdJHrp4TxcRERERESVWcocuRzvgG01sXYiIiIiIaF5LztCVkgNYMwAIYOBYomtDRERERETzWFKFrlcbetQZSeJ9XUREREREpAtJFbp2NfeFFxi6iIiIiIhIB5IqdDV0usILHEyDiIiIiIh0IKlC1+EeFxRFqAt8QDIREREREelAUoWuEU8A7YNudYHdC4mIiIiISAeSKnQBQF2HU53JDrZ0ufuA0cHEVYiIiIiIiOa1pAtd9Z3B0GVJA9KL1Pn+o4mrEBERERERzWtJF7rqQqELYBdDIiIiIiJKuKQLXfVRIxhyMA0iIiIiIkqspAtdJ4ZGMeT2qgts6SIiIiIiogRLqtBVnGkFENHaxdBFREREREQJllSha1lhOoCI+7oiH5AsRIJqRURERERE81lSha6qAjuAiGHjM8sByQD4RgBXVwJrRkRERERE81Vyha4itaVLGzbeaAayytV5djEkIiIiIqIESKrQtaxADV1Helzw+hV1Je/rIiIiIiKiBEqq0FWSZUO6xQhfQKC5d1hdydBFREREREQJlFShS5IkLC8ad1+X9qyu5gTVioiIiIiI5rOkCl0AUF2shq76CSMYsqWLiIiIiIhmX/KFrlBL1/jQNXgMCPgTVCsiIiIiIpqvki50hboX1nc6IYQA0osBow1Q/MBQa4JrR0RERERE803Sha7KgjQYZAmDbh+6nGOALPO+LiIiIiIiSpikC11WkwFL8lIBxBpMg/d1ERERERHR7Eq60AWE7+viYBpERERERJRoSRm6lk82mAZDFxERERERzbKkDF3hYeNd6gotdPGeLiIiIiIiml1JGbpCLV0t/SMY8fjDoct5HPC6E1gzIiIiIiKab5IydOWmWZCfboEQQEOXC0jJBmxZ6saBo4mtHBERERERzStJGbqAcBdD3tdFRERERESJlLShSxtMo4Ohi4iIiIiIEidpQ9fEYeP5gGQiIiIiIpp9SRu6Qi1dDV1OBBTBli4iIiIiIkoIXYWua665BllZWfjsZz97xsdalJsKq0nGmE9BS/8IQxcRERER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RBRHDF1ERERERERxxNBFREREREQUR8ZEV2AmCCEAAE6nM8E1ISIiIiKiRAplglBG0IOkCF39/f0AgNLS0gTXhIiIiIiI9KC/vx8ZGRmJrgaAJAld2dnZAIC2tjbdfLA0+5xOJ0pLS9He3g673Z7o6lAC8BogXgPEa4B4DZDD4UBZWZmWEfQgKUKXLKu3pmVkZPA/LoLdbud1MM/xGiBeA8RrgHgNUCgj6IF+akJERERERJSEGLqIiIiIiIjiKClCl8Viwd133w2LxZLoqlAC8TogXgPEa4B4DRCvAdLjNSAJPY2lSERERERElGSSoqWLiIiIiIhIrxi6iIiIiIiI4oihi4iIiIiIKI4YuoiIiIiIiOKIoYuIiIiIiCiOkiJ0bd++HQsXLoTVasW6devw/vvvJ7pKNAX/8i//AkmSol7Lli3Tto+NjWHr1q3IyclBWloaPvOZz6C7uzvqGG1tbbjyyiuRkpKC/Px8fOc734Hf748q8/rrr+Pss8+GxWJBRUUFHn744Ql14TU0O3bu3IlPfOITKC4uhiRJePrpp6O2CyFw1113oaioCDabDZs2bcKRI0eiygwMDOC6666D3W5HZmYm/t//+38YHh6OKrN//35ceOGFsFqtKC0txY9//OMJdXnyySexbNkyWK1WrFy5Es8///y060LTd6pr4Etf+tKE74XLL788qgyvgblt27ZtWLNmDdLT05Gfn49PfepTaGxsjCqjp+//qdSFpmcq18DFF1884bvg61//elQZXgNz1wMPPIBVq1bBbrfDbrdjw4YNeOGFF7TtSfkdIOa4xx57TJjNZvHb3/5WHDp0SNx4440iMzNTdHd3J7pqdAp33323WLFihejs7NRevb292vavf/3rorS0VOzYsUN8+OGHYv369eK8887Ttvv9flFTUyM2bdok9uzZI55//nmRm5srbr/9dq3M0aNHRUpKirjllltEXV2duO+++4TBYBAvvviiVobX0Ox5/vnnxfe//33xpz/9SQAQTz31VNT2H/3oRyIjI0M8/fTTYt++feKTn/ykWLRokRgdHdXKXH755WL16tXi3XffFW+++aaoqKgQn//857XtDodDFBQUiOuuu04cPHhQ/O///q+w2WzioYce0sq8/fbbwmAwiB//+Meirq5O3HHHHcJkMokDBw5Mqy40fae6Bm644QZx+eWXR30v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",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline + causal encoder + encoder next token prediction\n",
    "train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('tiny', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0/2, epochs=2,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0548f29c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='2' class='' max='2' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [2/2 12:37&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>2.55960</td>\n",
       "      <td>1.67898</td>\n",
       "      <td>02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>2.27045</td>\n",
       "      <td>1.33314</td>\n",
       "      <td>04:13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.86790</td>\n",
       "      <td>1.03826</td>\n",
       "      <td>06:19</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.60350</td>\n",
       "      <td>0.94349</td>\n",
       "      <td>08:25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.59656</td>\n",
       "      <td>0.90378</td>\n",
       "      <td>10:31</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>299968</td>\n",
       "      <td>1.81595</td>\n",
       "      <td>0.88994</td>\n",
       "      <td>12:37</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 06:18&lt;00:00 #149984/150000 loss: 1.816 / 0.890]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA10AAAHmCAYAAACI6eTAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACFSklEQVR4nO3deWAb5Z0+8GdGly3bku8zPpI4ceJcDrkILVdJCQHK0YtSChQKPTZ0y4Ye0BZY9rfdQOlBF1JgSyntFgqlW45yFQiEM0Duy4kTJz4S36dkW7aueX9/jDSSbNmxE+uw/HxaMaOZV6OvZMX24/eddyQhhAARERERERFFhBzrAoiIiIiIiBIZQxcREREREVEEMXQRERERERFFEEMXERERERFRBDF0ERERERERRRBDFxERERERUQQxdBEREREREUWQPtYFTAZFUdDc3Iy0tDRIkhTrcoiIiIiIKEaEEOjr60NhYSFkOT76mBIidDU3N6O4uDjWZRARERERUZw4fvw4ZsyYEesyACRI6EpLSwOgvrEWiyXG1RARERERUazY7XYUFxdrGSEeJETo8g8ptFgsDF1ERERERBRXpx3FxyBHIiIiIiKiBMXQRUREREREFEEMXURERERERBHE0EVERERERBRBDF1EREREREQRxNBFREREREQUQQxdREREREREEcTQRUREREREFEEMXURERERERBHE0EVERERERBRBCRW6ttS0x7oEIiIiIiKiEAkVut453BHrEoiIiIiIiEIkVOja3dgb6xKIiIiIiIhCJFToqu3oh83hjnUZREREREREmoQKXUIAOxt7Yl0GERERERGRJqFCFwBsb+iOdQlERERERESahAtd2+rZ00VERERERPEj4ULXnuO9cHmUWJdBREREREQEIMFCV3qyHk6PggPNtliXQkREREREBCDBQldVSToAYDuHGBIRERERUZxIqNC1tCQDACfTICIiIiKi+JFYoas4HYDa0yWEiG0xRERERERESLDQtaDICqNeRteAC/VdjliXQ0REREREFF+h68orr0RGRga++MUvntLjTXodFhdZAQDb6znEkIiIiIiIYi+uQtf3vvc9/OlPfzqtYywr853Xxck0iIiIiIgoDsRV6DrvvPOQlpZ2WsdYUZoJgJNpEBERERFRfJi00PXuu+/ic5/7HAoLCyFJEp5//vkRbTZt2oSysjIkJSVh1apV+OSTTybr6TXLStWerqMdA+gecE368YmIiIiIiCZi0kLXwMAAlixZgk2bNoXd/8wzz2DDhg24++67sXPnTixZsgRr165Fe3v7hJ/L6XTCbreH3PwyUowoz00FAOxo4BBDIiIiIiKKrUkLXevWrcN//ud/4sorrwy7/1e/+hVuvvlm3HDDDaisrMQjjzwCs9mMxx9/fMLPtXHjRlitVu1WXFwcsn95Ka/XRURERERE8SEq53S5XC7s2LEDa9asCTyxLGPNmjXYunXrhI93xx13wGazabfjx4+rO9oOAAgMMeRkGkREREREFGv6aDxJZ2cnvF4v8vLyQrbn5eXh0KFD2v01a9Zgz549GBgYwIwZM/Dss89i9erVI45nMplgMplGPlH1i8Cc1VhRpk6mse+EDUNuL5IMusl9QUREREREROMUldA1Xm+++ebpHaDrKACgNMuM7FQjOvtd2N9kw3JfCCMiIiIiIoq2qAwvzM7Ohk6nQ1tbW8j2trY25OfnT94TdR4BAEiShOW+qeO3cYghERERERHFUFRCl9FoxLJly7B582Ztm6Io2Lx5c9jhg6estwHwugEAy30XSd7ByTSIiIiIiCiGJm14YX9/P2pra7X7dXV12L17NzIzM1FSUoINGzbg+uuvx/Lly7Fy5Uo88MADGBgYwA033DBZJQDCA3TXATlzA5NpNPRAUQRkWZq85yEiIiIiIhqnSQtd27dvx/nnn6/d37BhAwDg+uuvxxNPPIGrrroKHR0duOuuu9Da2oqqqiq89tprIybXOG2dh4GcuVhQaEWSQUavw41jnf0oz02b3OchIiIiIiIah0kLXeeddx6EEGO2ueWWW3DLLbdM1lOG13kYAGDUy1gyIx0f13Vje30PQxcREREREcVEVM7piirfZBoAtKnjOZkGERERERHFSgKGrsPa6jJOpkFERERERDGWgKHrCOAb5nhGSQYkCajvcqCjzxnjwoiIiIiIaDqa0qFr06ZNqKysxIoVK3xbZMBpA/rbAQDWZAMq8tRzudjbRUREREREsTClQ9f69etRXV2Nbdu2qRsyStRl8BBD/9TxPK+LiIiIiIhiYEqHrhEyy9VlUOjyXyR5WwNDFxERERERRV9iha6s2eoyaAbD5aXqDIYHmmwYdHljURUREREREU1jCRa6RvZ0zchIRp7FBI8i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7PeAKR26jEYjli1bhs2bN2vbFEXB5s2bsXr16hhWRqeiv78fR48eRUFBAZYtWwaDwRDyta2pqUFjY6P2tV29ejX27dsX8gvYG2+8AYvFgsrKSq1N8DH8bfzH4GcofsycORP5+fkhXwu73Y6PP/445Gve29uLHTt2aG3eeustKIqi/UBevXo13n33Xbjdbq3NG2+8gYqKCmRkZGhtxvpcjKcWio4TJ06gq6sLBQUFAPgZSARCCNxyyy147rnn8NZbb40YChpP3//HUwtN3Mk+A+Hs3r0bAEK+F/AzkFgURYHT6Uzc7wETmnYjDj399NPCZDKJJ554QlRXV4tvfvObIj09PWQ2E4pPt912m9iyZYuoq6sTH3zwgVizZo3Izs4W7e3tQgh1is6SkhLx1ltvie3bt4vVq1eL1atXa4/3Txd64YUXit27d4vXXntN5OTkhJ0u9Ac/+IE4ePCg2LRpU9jpQvkZio6+vj6xa9cusWvXLgFA/OpXvxK7du0SDQ0NQgh1iu709HTxwgsviL1794rLL7887JTxS5cuFR9//LF4//33xZw5c0KmC+/t7RV5eXni2muvFfv37xdPP/20MJvNI6YL1+v14he/+IU4ePCguPvuu8NOF36yWmjixvoM9PX1ie9///ti69atoq6uTrz55pvijDPOEHPmzBFDQ0PaMfgZmNq+853vCKvVKrZs2RIyHbjD4dDaxNP3/5PVQhN3ss9AbW2t+I//+A+xfft2UVdXJ1544QUxa9Yscc4552jH4Gdgarv99tvFO++8I+rq6sTevXvF7bffLiRJEq+//roQIjG/B0z50CWEEA8++KAoKSkRRqNRrFy5Unz00UexLonG4aqrrhIFBQXCaDSKoqIicdVVV4na2lpt/+DgoPiXf/kXkZGRIcxms7jyyitFS0tLyDHq6+vFunXrRHJyssjOzha33XabcLvdIW3efvttUVVVJYxGo5g1a5b4wx/+MKIWfoai4+233xYARtyuv/56IYQ6Tfedd94p8vLyhMlkEhdccIGoqakJOUZXV5e4+uqrRWpqqrBYLOKGG24QfX19IW327NkjPv3pTwuTySSKiorEvffeO6KWv/71r2Lu3LnCaDSKBQsWiJdffjlk/3hqoYkb6zPgcDjEhRdeKHJycoTBYBClpaXi5ptvHvEHEH4GprZwX38AId+b4+n7/3hq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XrP/jRn2DzZ0aBFGtAv7D32UtmEfH/J8ozzXWMbxzWk6jQiJ2hQ3UXqiCT/LKZUVpdcynqc5SZtxVXoKLycib9s4DjqunvsovSdRmR/q9F+ur5H2J+Rhj/L9DVkJd5TQNhjRZtj+sO/HsOcZ3ibcY0ZtM8oxwrQJ+6YM/wt5SJsxXsOIbWLk6vDn1zaH/sV+5PP5V0drN/w4w16fNnYytIYR5ysPayOCn1OEe3zw+yMCbf2X9QiudXjboPOhtacZXgeGHWfEOdPB73Hwax5W8/DWwccIvn7KsMeLkNc2/HFB7UY8V7jje7U96ksNU3vIcyF024iPTvjP4ljfb0TQe6SuS6GHCClDggJA0t6eoN/n/MNxAQAShP/SKP7j+VsHvRTJdwz/Nv+xhEDwkUPKkMQov2QFPSa45EANga/f8GOHtvXVBEBKA/Sm6TVV/pS8YJXJZIIpzBdq5U+/HTddiERERERERIB6zum4ZWdnQ6fToa2tLWR7W1sb8vPzwz4mPz9/zPb+5USOSURERERENFVMqKfLaDRi2bJl2Lx5M6644goA6kQamzdvxi233BL2MatXr8bmzZtx6623atveeOMNrF69GgAwc+ZM5OfnY/PmzaiqqgKgDhf8+OOP8Z3vfGdcdfm7b+12+0ReDhERERERJRh/JoiryxGLCXr66aeFyWQSTzzxhKiurhbf/OY3RXp6umhtbRVCCHHttdeK22+/XWv/wQcfCL1eL37xi1+IgwcPirvvvlsYDAaxb98+rc29994r0tPTxQsvvCD27t0rLr/8cjFz5kwxODg4rpqOHj2qDdnljTfeeOONN95444033ng7evToRKNOxEz4nK6rrroKHR0duOuuu9Da2oqqqiq89tpr2kQYjY2NIdcZOOuss/DUU0/hpz/9KX784x9jzpw5eP7557VrdAHAD3/4QwwMDOCb3/wment78elPfxqvvfbauK7RBQCZmZnac1ut1om+JEoQ/glVjh8/znP7pil+BoifAeJngPgZIJvNhpKSEi0jxIMJX6crHsXjXPwUffwcED8DxM8A8TNA/AxQPH4GJjSRBhEREREREU0MQxcREREREVEEJUToMplMuPvuu8Neu4umD34OiJ8B4meA+BkgfgYoHj8DCXFOFxERERERUbxKiJ4uIiIiIiKieMXQRUREREREFEEMXURERERERBHE0EVERERERBRBDF1EREREREQRxNBFREREREQUQQxdREREREREEcTQRUREREREFEH/H1DHPvMhKAvHAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline + causal encoder + encoder next token prediction\n",
    "train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('tiny', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0/2, epochs=2,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "a1bddc50",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='8' class='' max='8' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [8/8 1:14:59&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>2.30464</td>\n",
       "      <td>1.56358</td>\n",
       "      <td>03:20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>1.72967</td>\n",
       "      <td>0.93605</td>\n",
       "      <td>06:27</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.38447</td>\n",
       "      <td>0.84605</td>\n",
       "      <td>09:34</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.45703</td>\n",
       "      <td>0.80012</td>\n",
       "      <td>12:40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.46006</td>\n",
       "      <td>0.77872</td>\n",
       "      <td>15:47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>300000</td>\n",
       "      <td>1.41666</td>\n",
       "      <td>0.75976</td>\n",
       "      <td>18:54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>350016</td>\n",
       "      <td>1.39032</td>\n",
       "      <td>0.74583</td>\n",
       "      <td>22:01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>400000</td>\n",
       "      <td>1.41846</td>\n",
       "      <td>0.73250</td>\n",
       "      <td>25:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>450016</td>\n",
       "      <td>1.38481</td>\n",
       "      <td>0.72326</td>\n",
       "      <td>28:15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>500000</td>\n",
       "      <td>1.43020</td>\n",
       "      <td>0.72691</td>\n",
       "      <td>31:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>550016</td>\n",
       "      <td>1.37707</td>\n",
       "      <td>0.71749</td>\n",
       "      <td>34:29</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>600000</td>\n",
       "      <td>1.28683</td>\n",
       "      <td>0.70754</td>\n",
       "      <td>37:36</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>650016</td>\n",
       "      <td>1.33603</td>\n",
       "      <td>0.70108</td>\n",
       "      <td>40:43</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>700000</td>\n",
       "      <td>1.29093</td>\n",
       "      <td>0.69551</td>\n",
       "      <td>43:50</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>750016</td>\n",
       "      <td>1.17670</td>\n",
       "      <td>0.68443</td>\n",
       "      <td>46:57</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>800000</td>\n",
       "      <td>1.24391</td>\n",
       "      <td>0.68625</td>\n",
       "      <td>50:04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>850016</td>\n",
       "      <td>1.33066</td>\n",
       "      <td>0.68405</td>\n",
       "      <td>53:11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>900000</td>\n",
       "      <td>1.28942</td>\n",
       "      <td>0.68458</td>\n",
       "      <td>56:18</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>950016</td>\n",
       "      <td>1.29603</td>\n",
       "      <td>0.67639</td>\n",
       "      <td>59:26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1000000</td>\n",
       "      <td>1.31182</td>\n",
       "      <td>0.67060</td>\n",
       "      <td>1:02:32</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1050016</td>\n",
       "      <td>1.28628</td>\n",
       "      <td>0.66346</td>\n",
       "      <td>1:05:40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1100000</td>\n",
       "      <td>1.23122</td>\n",
       "      <td>0.66500</td>\n",
       "      <td>1:08:47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1150016</td>\n",
       "      <td>1.19196</td>\n",
       "      <td>0.66517</td>\n",
       "      <td>1:11:53</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1199872</td>\n",
       "      <td>1.26802</td>\n",
       "      <td>0.66425</td>\n",
       "      <td>1:15:00</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 09:20&lt;00:00 #149984/150000 loss: 1.268 / 0.664]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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RERERDR8QRuctCKDExERERER+UcQBidpqp4OnuYQXONERERERETDFITBSao4qd1WAICRwYmIiIiIiIYpCIOTVHHSeIKT2cbmEERERERENDxBGJykipPKE5ysDjccLncgR0RERERERONcEAYnqeKkdFnlQ1znREREREREwxGEwUmqOAmOLujU0sdjZz0iIiIiIhqOoA1OcHQhTKsGAJhYcSIiIiIiomEIwuAkTdWDoxMGnQoAK05ERERERDQ8QRicuitO3uBksrKzHhERERERDV0QBidPxcnZBYOGa5yIiIiIiGj4gjA4hcg3ozRSG3KucSIiIiIiouEI8uAkBSZWnIiIiIiIaDiCLzgplIBSCwCI1rgAcI0TERERERENz7gOTnl5ecjNzcWiRYt8H/BUnSJUnooTp+oREREREdEwjOvgtH79euTn52PPnj2+D3gaRISrpEqTiVP1iIiIiIhoGMZ1cDolT8XJoJSCEytOREREREQ0HEEanKSKkzc4saseERERERENR5AGJ6niFKawA2BXPSIiIiIiGp6gDk56wTNVj8GJiIiIiIiGIUiDkzRVL0SQKk6cqkdERERERMMRpMFJqjiFwAaA+zgREREREdHwBGlw8q042ZxutFnsgRwRERERERGNY0EanKSKk060YXpSOABg87H6QI6IiIiIiIjGsaAOTnB04rI5yQCA9w/WBHBAREREREQ0ngVpcJKm6sHRhUvnJAEAvi1vRX2HNYCDIiIiIiKi8SpIg5O34tSF1KhQLJwUBVEEPjpcG9hxERERERHRuBSkwclbceoEAFw2V5qu98EhBiciIiIiIhq8IA1O3RUnALhkVhKUCgGHqztQ3mwJ4MCIiIiIiGg8CvLgJFWcYsO0WJ4dCwD4kFUnIiIiIiIapCANTt3NIbx6dtcTRTEQoyIiIiIionEqSIOT71Q9ALhwRgI0KgVKmyzIrzMGaGBERERERDQeBWlw8m0OAQAGnRrnTYsHwCYRREREREQ0OEEanHpXnIDu6XofHqyF283pekREREREdHqCNDj1XuMEACunxcOgVaG2w4p9lW0BGBgREREREY1HQRqcfLvqeenUSlwwIxEA8MFBTtcjIiIiIqLTE9zBye0AXA6fh7yb4f73SB0cLvdoj4yIiIiIiMahIA1Ood23T5qutzwrBjF6DVotduwoaR7lgRERERER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",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline + causal encoder + encoder next token prediction\n",
    "train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('base', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0, epochs=8,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "3b668405",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      <progress value='8' class='' max='8' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [8/8 1:14:44&lt;00:00]\n",
       "    </div>\n",
       "    \n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: left;\">\n",
       "      <th>samples</th>\n",
       "      <th>train</th>\n",
       "      <th>val</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>50016</td>\n",
       "      <td>1.77722</td>\n",
       "      <td>1.56204</td>\n",
       "      <td>03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>100000</td>\n",
       "      <td>1.08727</td>\n",
       "      <td>0.95343</td>\n",
       "      <td>06:13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>150016</td>\n",
       "      <td>1.03234</td>\n",
       "      <td>0.85848</td>\n",
       "      <td>09:20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>200000</td>\n",
       "      <td>1.03775</td>\n",
       "      <td>0.81874</td>\n",
       "      <td>12:26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>250016</td>\n",
       "      <td>1.01491</td>\n",
       "      <td>0.78222</td>\n",
       "      <td>15:33</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>300000</td>\n",
       "      <td>0.98004</td>\n",
       "      <td>0.76420</td>\n",
       "      <td>18:40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>350016</td>\n",
       "      <td>0.90916</td>\n",
       "      <td>0.75254</td>\n",
       "      <td>21:47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>400000</td>\n",
       "      <td>0.92307</td>\n",
       "      <td>0.74475</td>\n",
       "      <td>24:54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>450016</td>\n",
       "      <td>0.91725</td>\n",
       "      <td>0.73827</td>\n",
       "      <td>28:01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>500000</td>\n",
       "      <td>0.84421</td>\n",
       "      <td>0.73274</td>\n",
       "      <td>31:08</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>550016</td>\n",
       "      <td>0.88127</td>\n",
       "      <td>0.72657</td>\n",
       "      <td>34:14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>600000</td>\n",
       "      <td>0.93613</td>\n",
       "      <td>0.71008</td>\n",
       "      <td>37:22</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>650016</td>\n",
       "      <td>0.87409</td>\n",
       "      <td>0.70398</td>\n",
       "      <td>40:29</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>700000</td>\n",
       "      <td>0.91990</td>\n",
       "      <td>0.69744</td>\n",
       "      <td>43:35</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>750016</td>\n",
       "      <td>0.86767</td>\n",
       "      <td>0.69162</td>\n",
       "      <td>46:42</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>800000</td>\n",
       "      <td>0.95336</td>\n",
       "      <td>0.68982</td>\n",
       "      <td>49:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>850016</td>\n",
       "      <td>0.84717</td>\n",
       "      <td>0.68376</td>\n",
       "      <td>52:56</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>900000</td>\n",
       "      <td>0.91001</td>\n",
       "      <td>0.68244</td>\n",
       "      <td>56:03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>950016</td>\n",
       "      <td>0.86809</td>\n",
       "      <td>0.67930</td>\n",
       "      <td>59:10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1000000</td>\n",
       "      <td>0.87008</td>\n",
       "      <td>0.67432</td>\n",
       "      <td>1:02:17</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1050016</td>\n",
       "      <td>0.81858</td>\n",
       "      <td>0.67386</td>\n",
       "      <td>1:05:24</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1100000</td>\n",
       "      <td>0.85216</td>\n",
       "      <td>0.67201</td>\n",
       "      <td>1:08:31</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1150016</td>\n",
       "      <td>0.91217</td>\n",
       "      <td>0.66891</td>\n",
       "      <td>1:11:38</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1199872</td>\n",
       "      <td>0.85340</td>\n",
       "      <td>0.66491</td>\n",
       "      <td>1:14:44</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>\n",
       "\n",
       "    <div>\n",
       "      <progress value='4687' class='' max='4687' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [4687/4687 09:20&lt;00:00 #149984/150000 loss: 0.853 / 0.665]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1cAAAHmCAYAAACfy3QJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACeCklEQVR4nOzdd3zdVf3H8dcd2bNJmjSzabrTTRelbMsQZIogKCKKoBRluEBFRFFQxg+VOgAFHGyZMgTKKNCW7j3SNkmz9x53f39/fJObpE1HmpvcNHk/H4/7uDc333vvuem37X3nc87nWAzDMBAREREREZF+sQZ7ACIiIiIiIsOBwpWIiIiIiEgAKFyJiIiIiIgEgMKViIiIiIhIAChciYiIiIiIBIDClYiIiIiISAAoXImIiIiIiASAPdgDGCw+n4+ysjJiYmKwWCzBHo6IiIiIiASJYRg0NzeTlpaG1Rq4etOICVdlZWVkZmYGexgiIiIiIjJEFBcXk5GREbDnGzHhKiYmBjB/gLGxsUEejYiIiIiIBEtTUxOZmZn+jBAoIyZcdU4FjI2NVbgSEREREZGALxdSQwsREREREZEAULgSEREREREJAIUrERERERGRAFC4EhERERERCQCFKxERERERkQBQuBIREREREQkAhSsREREREZEAULgSEREREREJAIUrERERERGRAFC4EhERERERCYCRF66aK4M9AhERERERGYZGXrhqqwn2CEREREREZBgaeeHK7Qj2CEREREREZBgaeeHKo3AlIiIiIiKBp3AlIiIiIiISAApXIiIiIiIiATDywpXWXImIiIiIyAAYeeFKlSsRERERERkAClciIiIiIiIBoHAlIiIiIiISACMvXGnNlYiIiIiIDICRF65UuRIRERERkQGgcCUiIiIiIhIAClciIiIiIiIBMPLCldZciYiIiIjIABh54UqVKxERERERGQAKVyIiIiIiIgGgcCUiIiIiIhIAIy9cac2ViIiIiIgMgJEXrlS5EhERERGRAXBchatLLrmEUaNGcdlllx37kyhciYiIiIjIADiuwtXNN9/MP/7xj/49icKViIiIiIgMgOMqXJ1++unExMT070m05kpERERERAbAoIWrFStWcMEFF5CWlobFYuGVV1456Jhly5aRnZ1NeHg4CxcuZM2aNYEfiCpXIiIiIiIyAAYtXLW2tjJr1iyWLVvW6/efe+45brvtNu666y42bNjArFmzOOecc6iqqjqm13M6nTQ1NfW4ABgeBxjGMb8PERERERGR3gxauPr85z/PPffcwyWXXNLr9x966CG+9a1vce2115Kbm8tf/vIXIiMj+fvf/35Mr3fvvfcSFxfnv2RmZgJgwQCv65jfh4iIiIiISG+GxJorl8vF+vXrWbJkif8+q9XKkiVLWLVq1TE95x133EFjY6P/Ulxc3PVNd3t/hywiIiIiItKDPdgDAKipqcHr9ZKSktLj/pSUFHbt2uX/esmSJWzevJnW1lYyMjJ44YUXWLRoUa/PGRYWRlhYWO8vqHVXIiIiIiISYEMiXB2t9957LzBPpMqViIiIiIgE2JCYFpiUlITNZqOysrLH/ZWVlYwZMybwL6jKlYiIiIiIBNiQCFehoaHMnTuX5cuX++/z+XwsX778kNP++kXhSkREREREAmzQpgW2tLSwd+9e/9cFBQVs2rSJhIQEsrKyuO2227jmmmuYN28eCxYs4OGHH6a1tZVrr7028IPRRsIiIiIiIhJggxau1q1bxxlnnOH/+rbbbgPgmmuu4cknn+SKK66gurqan//851RUVDB79mzefvvtg5pcBIRHa65ERERERCSwLIYxMnbUbWpqIi4ujsbbY4i95lmYcl6whyQiIiIiIkHgzwaNjcTGxgbseYfEmqtBp8qViIiIiIgE2LAPV8uWLSM3N5f58+d33ak1VyIiIiIiEmDDPlwtXbqUHTt2sHbt2q47VbkSEREREZEAG/bhqleqXImIiIiISICNzHClypWIiIiIiATYyAxXqlyJiIiIiEiAjcxw5VG4EhERERGRwBqZ4cqtaYEiIiIiIhJYIzNcqXIlIiIiIiIBNiLDlU+VKxERERERCbARGa68zrZgD0FERERERIaZERmuVLkSEREREZFAG5nhyqVwJSIiIiIigTXsw9WyZcvIzc1l/vz5XXeqciUiIiIiIgE27MPV0qVL2bFjB2vXrvXfZ2gTYRERERERCbBhH656Y/GociUiIiIiIoE1QsOVKlciIiIiIhJYIzJcWb3OYA9BRERERESGmREZrmxeVa5ERERERCSwRma4Mtzg8wZ7GCIiIiIiMoyMyHAFgNZdiYiIiIhIAI3ccKV27CIiIiIiEkAjLly5DJt5Q+3YRUREREQkgEZcuHIQYt5Q5UpERERERAJoxIUrF6HmDVWuREREREQkgIZ9uFq2bBm5ubnMnz8fAIfREa5UuRIRERERkQAa9uFq6dKl7Nixg7Vr1wLg7JwWqMqViIiIiIgE0LAPVwfSmisRERERERkIIzBcac2ViIiIiIgE3ogLV05DlSsREREREQm8EReuOitXPrcqVyIiIiIiEjgjLlx1tmL3OFuDPBIRERERERlORly46mxo4XK0BXkkIiIiIiIynIy4cOW1hgHgcSpciYiIiIhI4IzgcKU1VyIiIiIiEjgjLlwZNjNceV2qXImIiIiISOCMuHDls4cD4HWpciUiIiIiIoEz4sIVHeHKULgSEREREZEAGnnhKqQjXGmfKxERERERCaARF64sNjNc4XEEdyAiIiIiIjKsDPtwtWzZMnJzc5k/fz4AltAI89qjypWIiIiIiATOsA9XS5cuZceOHaxduxYAa6hZubJ4nMEcloiIiIiIDDPDPlwdyBZiVq6sXk0LFBERERGRwBlx4coeFgmATeFKREREREQCaASGK7NyZfdpWqCIiIiIiATOiAtXIR2VK4UrEREREREJpBEXrkIjzHAVYriCPBIRERERERlORly4CgvrFq4MI8ijERERERGR4WLkhavIKABs+MDrDvJoRERERERkuBhx4So8PLLrC20kLCIiIiIiATLiwlVERAQ+w2J+4VY7dhERERERCYwRF66iQu04CAXAcLcFeTQiIiIiIjJcjLhwFRFmx0EIAC6HwpWIiIiIiATGyAtXITZ/5aq9rTXIoxERERERkeFixIUrm9WCizAAnA6FKxERERERCYwRF64AXBazcuVsV7gSEREREZHAGJHhym01K1dacyUiIiIiIoEyIsOVpyNcuRWuREREREQkQIZ9uFq2bBm5ubnMnz/ff5+3I1x5nApXIiIiIiISGMM+XC1dupQdO3awdu1a/31em8KViIiIiIgE1rAPV70xbOEAeF3tQR6JiIiIiIgMFyMyXPnsZrjyuVS5EhERERGRwBiR4YrOcOV2BHkgIiIiIiIyXIzMcBUSYV67NS1QREREREQCY0SGK2tnuPIoXImIiIiISGCMyHBlCe2sXGlaoIiIiIiIBMaIDFe2jsqV1atwJSIiIiIigTEyw1VYJKBwJSIiIiIigTMiw5U9zKxc2bzOII9ERERERESGixEarszKld2ncCUiIiIiIoExIsNVaLjClYiIiIiIBNYIDVdR5rWhcCUiIiIiIoExIsNVWERnuHIFeSQiIiIiIjJcjOhwFYYLl8cX5NGIiIiIiMhwMCLDVXhHuArHRZvLE+TRiIiIiIjIcDAiw1VIR7fAMFy0urxBHo2IiIiIiAwHIzJcEWLucxVm8dDWrqYWIiIiIiLSfyMzXNnD/Tfb29uCOBARERERERkuRma46qhcATjaWoI4EBERERERGS5GZriy2nBjB6C9vTXIgxERERERkeFg2IerZcuWkZuby/z583vc77aEAuByaFqgiIiIiIj037APV0uXLmXHjh2sXbu2x/1uaxgALocqVyIiIiIi0n/DPlwdiqcjXHlUuRIRERERkQAYseHKazU7BrqdClciIiIiItJ/Izdc2czKldfVHuSRiIiIiIjIcDBiw5WvY68rrypXIiIiIiISACM2XBk2M1z53KpciYiIiIhI/43YcEVIR7jStEAREREREQmAkRuu7BHmtSpXIiIiIiISACM2XFlCOsKVxxHcgYiIiIiIyLAwYsOVNdQMVxaFKxERERERCYARG65sHeHK6lW4EhERERGR/hu54SosElC4EhERERGRwBix4coeZlaubF5nkEciIiIiIiLDwYgNV6FhUQCEGE48Xl+QRyMiIiIiIse7ERuuQsLNaYHhuGh1eYM8GhEREREROd6N2HBlD+sKV20uT5BHIyIiIiIix7sRG66whwMQhptWpypXIiIiIiLSPyM3XHVsIhxuUeVKRERERET6b+SGq47KVbgqVyIiIiIiEgAjN1x1VK7CtOZKREREREQCYOSGq87KlUXdAkVEREREpP9GbrjqXHOFizanKlciIiIiItI/Izdc+ddcqXIlIiIiIiL9N3LDVffKlcMd5MGIiIiIiMjxbuSGq47Klc1i0O50BnkwIiIiIiJyvBu54aqjcgXgdrYGcSAiIiIiIjIcjNxwZQvFwAKA29EW5MGIiIiIiMjxbtiHq2XLlpGbm8v8+fN7fsNiwWsLA8DjVLgSEREREZH+GfbhaunSpezYsYO1a9ce9D2v1Vx35Va4EhERERGRfhr24epwfB1NLXyu9iCPREREREREjncjOlwZ/nClypWIiIiIiPTPiA5Xne3YDbcjyAMREREREZHj3YgOV5bOduxuTQsUEREREZH+UbgC8KhyJSIiIiIi/TOiw5U11AxXVq8Dr88I8mhEREREROR4NqLDla0jXIXjot3tDfJoRERERETkeDaiw5U1NBKAMFy0OT1BHo2IiIiIiBzPRnS4soSY3QLDcdPqUuVKRERERESO3YgOV52t2MMtLlpVuRIRERERkX5QuMJcc9WmypWIiIiIiPTDyA5XIV0NLVpdqlyJiIiIiMixG9nhqnvlyqnKlYiIiIiIHLuRHa46K1cWVa5ERERERKR/Rna4snfrFqiGFiIiIiIi0g8jO1x1VK7C1NBCRERERET6aWSHK7ViFxERERGRABnZ4apbt0BVrkREREREpD9Gdrjq1i2wRZUrERERERHph5EdrrpVrraUNGAYRpAHJCIiIiIix6uRHa78a67c5FW2sLO8OcgDEhERERGR49XIDlcdlatomxuAVzeVBnM0IiIiIiJyHBvZ4arbmiuAVzeV4fNpaqCIiIiIiPTdyA5XHZUrq89NXLiViiYHqwtqgzwoERERERE5Ho3scNVRuQK4cFoCAK9uLAvWaERERERE5Dg2ssNVR+UK4MJcM1y9ua0ch1t7XomIiIiISN+M7HBltYE1BIC5aeGkxoXT7PDw4e6qIA9MRERERESONyM7XEHXuiuvkwtnpQHwiqYGioiIiIhIHylcda678rRz0ex0AN7fVUVjuzuIgxIRERERkeONwlVIR7hyO5iaGsOklGhcXh9vbS0P7rhEREREROS4onBl72hq4WnHYrFw8RyzevWKNhQWEREREZE+ULjqVrkC/OuuPiuoo7yxPVijEhERERGR44zCVbfKFUDGqEgWZCdgGPDaJjW2EBERERGRo6NwdUDlCuCiOR1dAxWuRERERETkKClcHVC5Ajh/RiohNgs7y5vIq2wO0sBEREREROR4onDVS+UqPjKU0ycnA/DKxoMbW3i8Phxu76AMT0REREREjg/2YA8g6HqpXAFcPDudd3dU8tTKQt7bWUmr00uby0Oby4vT48NigV9fPIOrFmYFYdAiIiIiIjLUDPvK1bJly8jNzWX+/Pm9H9BZufI4e9z9uanJJEaF0uryklfZQmlDO/VtbpweHwCGAfe+uZPqZueBzygiIiIiIiPQsK9cLV26lKVLl9LU1ERcXNzBB3RWrtw9K1fhITZeWbqYXRXNRIXaiAi1ERVmJzLURkSIja8/sZatpY088L/d/PaymYPwTkREREREZCgb9uHq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j/srKysZM2ZMr48ZM2ZMn46Xoe1YzoFODzzwAPfddx/vvfceM2fOHMhhygDq6zmwb98+CgsLueCCC/z3+Xw+AOx2O7t372b8+PEDO2gJqGP5dyA1NZWQkBBsNpv/vqlTp1JRUYHL5SI0NHRAxyyBdyznwZ133snVV1/NddddB8CMGTNobW3l+uuv56c//SlWq34XPZwd6jNhbGysqlYj0LPPPst1113HCy+8cEyzmYbFvxahoaHMnTuX5cuX++/z+XwsX76cRYsW9fqYRYsW9Tge4N133z3k8TK0Hcs5APC73/2OX/3qV7z99tvMmzdvMIYqA6Sv58CUKVPYunUrmzZt8l8uvPBCf7eozMzMwRy+BMCx/DuwePFi9u7d6w/WAHl5eaSmpipYHaeO5Txoa2s7KEB1Bm5zLbwMZ/pMKJ2eeeYZrr32Wp555hnOP//8Y3uSPrfNGKKeffZZIywszHjyySeNHTt2GNdff70RHx9vVFRUGIZhGFdffbVx++23+4//9NNPDbvdbjzwwAPGzp07jbvuussICQkxtm7dGqy3IP3U13PgvvvuM0JDQ40XX3zRKC8v91+am5uD9Rakn/p6DhxI3QKPf309B4qKioyYmBjjpptuMnbv3m3897//NZKTk4177rknWG9BAqCv58Fdd91lxMTEGM8884yRn59vvPPOO8b48eONyy+/PFhvQfqhubnZ2Lhxo7Fx40YDMB566CFj48aNxv79+w3DMIzbb7/duPrqq/3H5+fnG5GRkcYPf/hDY+fOncayZcsMm81mvP3228F6CxIAfT0P/v3vfxt2u91YtmxZj8+FDQ0NfXrdYROuDMMw/vjHPxpZWVlGaGiosWDBAmP16tX+75122mnGNddc0+P4559/3pg0aZIRGhpqTJs2zXjjjTcGecQSaH05B8aOHWsAB13uuuuuwR+4BExf/x3oTuFqeOjrObBy5Upj4cKFRlhYmJGTk2P8+te/NjwezyCPWgKtL+eB2+02fvGLXxjjx483wsPDjczMTOPGG2806uvrB3/g0m8ffPBBr/+/d/6ZX3PNNcZpp5120GNmz55thIaGGjk5OcYTTzwx6OOWwOrreXDaaacd9vijZTEM1btFRERERET6a1isuRIREREREQk2hSsREREREZEAULgSEREREREJAIUrERERERGRAFC4EhERERERCQCFKxERERERkQBQuBIREREREQkAhSsRERERERlSVqxYwQUXXEBaWhoWi4VXXnmlz89hGAYPPPAAkyZNIiwsjPT0dH79618HfrDd2Af02UVERERERPqotbWVWbNm8Y1vfINLL730mJ7j5ptv5p133uGBBx5gxowZ1NXVUVdXF+CR9mQxDMMY0FcQERERERE5RhaLhZdffpmLL77Yf5/T6eSnP/0pzzzzDA0NDUyfPp3f/va3nH766QDs3LmTmTNnsm3bNiZPnjxoY9W0QBEREREROa7cdNNNrFq1imeffZYtW7bwpS99iXPPPZc9e/YA8Prrr5OTk8N///tfxo0bR3Z2Ntddd92AV64UrkRERERE5LhRVFTEE088wQsvvMApp5zC+PHj+cEPfsDJJ5/ME088AUB+fj779+/nhRde4B//+AdPPvkk69ev57LLLhvQsWnNlYiIiIiIHDe2bt2K1+tl0qRJPe53Op0kJiYC4PP5cDqd/OMf//Af97e//Y25c+eye/fuAZsqqHAlIiIiIiLHjZaWFmw2G+vXr8dms/X4XnR0NACpqanY7fYeAWzq1KmAWflSuBIRERERkRFvzpw5eL1eqqqqOOWUU3o9ZvHixXg8Hvbt28f48eMByMvLA2Ds2LEDNjZ1CxQRERERkSGlpaWFvXv3AmaYeuihhzjjjDNISEggKyuLr371q3z66ac8+OCDzJkzh+rqapYvX87MmTM5//zz8fl8zJ8/n+joaB5++GF8Ph9Lly4lNjaWd955Z8DGrXAlIiIiIiJDyocffsgZZ5xx0P3XXHMNTz75JG63m3vuuYd//OMflJaWkpSUxIknnsjdd9/NjBkzACgrK+O73/0u77zzDlFRUXz+85/nwQcfJCEhYcDGrXAlIiIiIiISACNmzZXP56OsrIyYmBgsFkuwhyMiIiIiIkFiGAbNzc2kpaVhtQZud6oRE67KysrIzMwM9jBERERERGSIKC4uJiMjI2DPN2LCVUxMDGD+AGNjY4M8GhERERERCZampiYyMzP9GSFQRky46pwKGBsbq3AlIiIiIiIBXy40YsLVULC/pJy2NicWi/kHabFasGDBarVgtVqxWi3YbTasVhs2mw2bzfw6JMSO3WbDbrcFdE6oiIiIiIgEjsLVIHA4Xdx/56+I3L+x38/lw4KBBZ/FimGx4rPYMDpvW21gsWFYzQs2G9jsWKx289pux2qzY7GHYgsJ6biEYg8JwR4aSkhoGGHh4YSGhxEeEUZ4WDjhkRFERkYQHRVBVGQkMTGRxMZEEWLXqSMiIiIi0p0+IQ+wpuY2Hrrjp8RU78EAPBY7ZvHR7IBv6dYJ34qPIxUmrRiAgc3wdT5Fv3k6Lg6g+Sgf48WKxxaK1xqC1x6KYQ+FkDAsIWFYQ8OwhUUQEh5BaHgEYZGRhEVGEhkVRVR0FDGx0cTFxjIqPpaEUXFER4WrIiciIiIixz2FqwFUVdPAsp/cTmxjCR6LjUlXLeWSC88+7GN8Ph9enw+v14fH48Xr9eLxevG4Pbg8XjweD26PB4/bi8vtxu3y4Ha7O+5z43Z3fO1y43a5zNtuNx63C4/LjcdtXrwuFx63C5/Hg8/jxud24fO4MNxu8LrB48Li9WD1urD6PNi9buyG2x/+bPiweR3gdYD70O/HC7R1XOoPeYwVty0Urz0cX0g4Rmg41rBIbOGRhEREEhYVTUR0NNGxscTExRIfH0fCqHhGJ8WTlBCPzW7r+x+OiIiIiEiAKVwNkP0l5Txx50+IbavGZQ1l/vU/ZMkZi474OHPtlZUQOxA28OPsC5/PR1u7g+aWdppbW2lpaqWltY3W1jbaWttob2vD0d6Os60NZ3s7rvY2vE4HHmc7hsuB4XJgcTuxepzYPU5CfC6sGD2DmvPg1/UCLR2XigPHhAWXLQyPPQJfaASW8ChsEVGERMUQERNLVFwcsfHxjEoYRVLSKFKSk0hJGqVAJiIiIiIBp3A1AHbsLuDFX99JjLOBdnskS265kxPnzwj2sPrNarUSHRVJdFQkqST2+/l8Ph8NTa00NDRR39BIY2MzjY2NtDS10NbSTHtLK87WFtxtrXgcrRiONiyudmxuByEeByGGGysG4f5gVt9jXqMHaOy4FHd/XSy4bOG4QyMxwqKxRkYTEhVLRGwcUXHxxCcmkDQ6kZSUJNJTk4mNidK0RRERERE5IoWrAFuzYRvvPPhLojxttIbG8cWf/pJpU8YHe1hDktVqJSE+hoT4GCC9z49vdzipqqmjpqae2tp6GuobaW5opLW5CUdzE87WZrxtLRiOVqzONkLcbYT5nB2BrJ3w9nZor4UG8/l8mNmsmZ5hzG2x4wqJwhsejSUyhpDoOCLjRhEzKoH4pESSk5PISB9DRloyoaEh/f65iIiIiMjxyWIYRoDaIgxtTU1NxMXF0djYOGD7XDU1t/HHb19DuKed5sjRfP3u35CdlTogryXHxuF0UVldS0VlLbU1ddTV1NLc0EBrYyPO5kbcLU0Y7c3YnK2EulsJMTxH/dwG4LRH4A6NgchY7DHxRMQnEJuYQELSaMaMSSEjM4W0MaPVbVFEREQkiAYqG+gTXgC9+97HhHvaaQuJ5sbfPUTy6FHBHpIcIDwslLEZqYzNOLrQ29DYTGl5FZWVNdRU1VBfW0tLfT2OpgbcLY0YbU3YnS2Eu1vNipinnXBPO7RVQY35HE0dl8KO5/RixRkShSciFmt0PGGxo4hOSCIheTQpqSlkZqWRnZGqKpiIiIjIcUbhKoB2rf2McMCWPV3BapiIj4shPi7miFM7vR4vZVW1lJZWUllZRW1VFU21dbQ21OFuaoC2RuyOZsI9rdjwEeluBnczNJVCmdnHo7zjsglzXZgjJApPeEcAi08kNimZpDEppKenkZ2dRmpKktaCiYiIiAwhClcB4vP58BXtACB3wYlBHo0MNpvdRmZaMplpyYc9zuVyU1xWSVFxOZXlldRVVdNcV4OjoQ5fSz229ibCXS0dAawF3C3QXAbl0I65FqwYWA14LDYcYbH4okYREptAdOJoRqWkkJqeytixGYzLSlP1S0RERGQQKVwFyNqNO4h0t+Cx2FnyuZOCPRwZokJDQxifncH47IxDHuP1eCkuq6KouIyKsgpqKqtorq3G0VCLr7mekPZGIjyt2A0v0Y56cNRDbT7eAnMmYg2wFXP6oSM0Bm9UPPa4RKITk0kYM4a0jHRycjLJzkhVS3oRERGRAFK4CpDVH34MQHvSOKKjIoM8Gjme2ew2srNSD9sMpa3dQcH+UoqKyqgoK6e+spLW2mo8TbXYWhsIdzVjw0eUqxFcjVC/H19hV/jaghm+2sPj8EUlEDoqidjRKSSnpZE5NpNJE8eSlBA/OG9YREREZJhQuAqQul2biQXSZswN9lBkBIiMCGfalPGHXAvm9ngoKqmgoKCYspIy6ioqaKmtxt1Qg621nghXEzZ83Spf+3DthRLMyyrAYQvHFTEKa1wiUYkpJKSmkZ6VwYQJY1X1EhEREemFwlUAlFfWEt1UCsDpZ50a5NGIQIjdftjphy6Xm/z9pRQUFFNeUkZ9ZTmtNVV4G2sIba83ux56HYS3lENLOZRuo34L1APbMNd7tYfHQ0wi4YkpjEpNIyMri/ETxjJ+XIZazYuIiMiIpE9AAbD8vRVYMWiOHM2knKxgD0fkiEJDQ5gyMZspE7N7/X5DYzN5+/azv6CYypJSmqorcNZVYWupI8LZiN3wEtNea27CXJVHy07YhXkxpxvGY8QmEZ6YQkJqOhnZWUycOI6crDRVvERERGTYUrgKgPwNa4gCosbPCPZQRAIiPi6GBSdMZ8EJ0w/6nsPpYl9BMfv27ae8uJj6igocNZVYmmuIcDR0TDesA0cdVOXRvBN2Yl7MitcoLPHJRI4eQ1J6BmNzspk6eTypKYmD/j5FREREAknhqp9cLjf2sjwA5ixeFOTRiAy88LDQQ673cns87CsoYe/eQkqLiqkvK8VR2xm8OiteNdBeA+U7qNsCdcBGwGkLxxmViH1UCrFj0kgbO5YJE8cxZdI4IsLDBv19ioiIiPSVwlU/rfh0HWE+J05rGKcunhfs4YgEVYjdfsjphi6Xm7y9RezdW0BpUREN5aW46iqxN9cQ6W4hzOsgrKkUmkrx7N9A0WdQBLyHhbaweIy40USOTiUpI4vs8dlMmzqBlGRVu0RERGToULjqp42frsIKeNImacNWkcMIDQ1heu54puceXPFqbGphx+59FOwtpLK4mObKMnwNVYS31hJiuIl21kNVPVTlUb/dbKyxEXDYInBFJxGSmMqo9AyycsYxZcoExmenY7VaB/09ioiIyMimcNVPrfu2EgOMmzM/2EMROW7FxUazaP4sFs2f1eN+n89HYVE5u3fvo6igkLqyEhw1Fdibqol0NxPubSe8sRgai3HkryHvY8gD3JYQ2qMSsSeMIS4tk7TsbKZMnsDkSWPVyVBEREQGjD5l9ENefhExbdX4sLDkrNOCPRyRYcdqtZKTnU5OdjrQc5uDhsZmtu/YR/6+fCqLimitLIWGKiIc9YQYbkJaKqClAnfRJvavhv3AGxYb7RGJWBNSiE01Q9fkKRPInZKj0CUiIiL9pk8T/fDhuysAaIlNV6czkUEWHxfD4kWzWbxodo/7HU4XO3cXsCdvH2WFhTSVl+CrryCirdZsqNFWBW1VeEu2UrwWioG3LTbaIxKwJowhNjWTjJxxTJkySZUuERER6RN9auiHsq0biAESpsw64rEiMjjCw0KZM3Myc2ZO7nG/2+Nhz75idu7Io7SwkMayYrx1FUS01mA3PMS0VUNbNd6Srexf21npstMemYgtMZX49Cwyx+cwbdpkrekSERGRXilcHaOW1jYiavIBOPH0U4I8GhE5khC7ndzJ48idPK7H/V6Pl937ivyhq6G0CF9dBRFtHaGrtRJaK3EVbWLfKtgHuKyhOKKTCUlKIzEzi3ETJzBr5lRVsEVEREY4hatj9N7yldgND20h0cyfkxvs4YjIMbLZbb2GLrfHw668Qnbt3ENpfj6N5SUYdeVEttcR6nMR2lQCTSW05a9h+0ewHWi3R+GOSyEiOZ2U7HFMmjyJWTMnER0VGZw3JyIiIoNK4eoY7VizmjDAmpWr6UEiw1CI3c6M3AnMyJ3Q4/52h5Mdu/axa0ce5QUFtFSUYG2oIMrVSISnlYjafKjNp27nx6x+C1ZioS18FCSkEpuWRUZODtOmT2Hy+CxsdluQ3p2IiIgMBIWrY+Dz+fDs30EYMGX+wmAPR0QGUUR4GHNn5zJ3ds+KdUNjM5u27mLfrr1UFRXiqCohtKmScK+DaEcdlNXhK9tO0Tooeh5etYbgiE4hNDmdpKxsJk6ZxKyZU0gcFRekdyYiIiL9pXB1DDZu2UWUqwmPxcaSzy0O9nBEZAiIj4vh9JPnc/rJXXve+Xw+ikoq2bptF/v37KW+ZD/e2jIiW2sI9bn9Uwtb9n7GxvfNjZFbQ+PwjUolJi2LzAkTmD5jqqpcIiIixwmFq2Ow6qNPAWhPHEdcbHSQRyMiQ5XVaiU7K5XsrFTgDP/9DqeL7Tv3snP7bsoLCmgtL8LWWEGku4UoVyNUNkLlLoo3vkPxC11VrrCUDJLH5jAxdzJzZk4lNkZruURERIaSYwpXy5Yt4/7776eiooJZs2bxxz/+kQULFhzy+BdeeIE777yTwsJCJk6cyG9/+1vOO+88//cNw+Cuu+7iscceo6GhgcWLF/PnP/+ZiRMn+o/Jzs5m//79PZ733nvv5fbbbz+Wt9AvNft2EQMkTZo+6K8tIse/8LDQXqcWllfWsmnzDvLz9lBXVIi3ppSItp5VrsY9q1n3HqzpXMuVmEZ8+ljGTprI7FnTyMpI0TpQERGRIOlzuHruuee47bbb+Mtf/sLChQt5+OGHOeecc9i9ezfJyckHHb9y5UquvPJK7r33Xr7whS/w9NNPc/HFF7NhwwamTzfDye9+9zv+8Ic/8NRTTzFu3DjuvPNOzjnnHHbs2EF4eLj/uX75y1/yrW99y/91TEzMsbznfvH5fNhriwHInT1j0F9fRIav1JREUs8+Bc7u2t7B5XKzdccedm7fTVn+PlrLiwhprCDC02au5Sqtw1O6jX1rYN+/wGGPwBWXStSYTNLGT2DajKlMz52gzZBFREQGgcUwDKMvD1i4cCHz58/nkUceAcywkZmZyXe/+91eq0hXXHEFra2t/Pe///Xfd+KJJzJ79mz+8pe/YBgGaWlpfP/73+cHP/gBAI2NjaSkpPDkk0/y5S9/GTArV7fccgu33HLLMb3RpqYm4uLiaGxsJDY29pieA2DXnkLe+NlNeLFy49+fVYtlEQmK/SXlbN68k8I9e2koLsCoKSPSUYeVg/9J91jstEWPJjQ5k9Ed0wrnzp6maYUiIjJiBSobHKhPv8p0uVysX7+eO+64w3+f1WplyZIlrFq1qtfHrFq1ittuu63Hfeeccw6vvPIKAAUFBVRUVLBkyRL/9+Pi4li4cCGrVq3yhyuA++67j1/96ldkZWVx1VVXceutt2I/xG9jnU4nTqfT/3VTU1Nf3uohrVuzEYDW6BQFKxEJmrEZqYzNSAXO9N/X1NzGxi072bNjN5WF+3BVlRDRXEmI4SG2uRyay2net4YN78M6LLSFJ2BJSichaxw5UyYzZ/Y0bYQsIiLSD30KVzU1NXi9XlJSUnrcn5KSwq5du3p9TEVFRa/HV1RU+L/fed+hjgH43ve+xwknnEBCQgIrV67kjjvuoLy8nIceeqjX17333nu5++67+/L2jkrx7l2EAuHpOQF/bhGR/oiNieS0xXM5bfFc/31uj4ftu/LZsXUnpfv20VK2n5DG8o5phbVQUouzZAs7V8JOoC0kBm9CGrHp2YydNInZc6YxLitN67hERESOwnEzCb979WvmzJmEhoZyww03cO+99xIWFnbQ8XfccUePxzQ1NZGZmdnvcTjK8gkFMidP6fdziYgMtBC7ndnTJzF7+qQe9xcWlbNp03YK8/JoLCnEUltKlKuRSHczVO7GqNxN4Yb/UfgsOGwRuOJTiUodS8bEicycOY2pk7LVHl5EROQAfQpXSUlJ2Gw2Kisre9xfWVnJmDFjen3MmDFjDnt853VlZSWpqak9jpk9e/Yhx7Jw4UI8Hg+FhYVMnjz5oO+HhYX1Grr6o6W1nahm873MnT8noM8tIjKYulrEd03JrqlrYP2G7ezdtZu6/fl4a0qJaqsh3NtOeG0+1OZTvu0Dyl+G160hOGJTCR+TSVrORHJn5DJr+kRCQ0OC96ZERESCrE/hKjQ0lLlz57J8+XIuvvhiwGxosXz5cm666aZeH7No0SKWL1/eoxHFu+++y6JFiwAYN24cY8aMYfny5f4w1dTUxGeffcZ3vvOdQ45l06ZNWK3WXjsUDpQ167Zgw0e7PZLJE7IG7XVFRAZDUkI85yxZzDlLujZHb2ltZ8OmHeR1ruOqLCKypcpsD99QBA1F1Oz6lBVvwvsWG23RKYSmZDJm3ASmzpjKnFlTiQgP7C+6REREhqo+Twu87bbbuOaaa5g3bx4LFizg4YcfprW1lWuvvRaAr33ta6Snp3PvvfcCcPPNN3Paaafx4IMPcv755/Pss8+ybt06Hn30UQAsFgu33HIL99xzDxMnTvS3Yk9LS/MHuFWrVvHZZ59xxhlnEBMTw6pVq7j11lv56le/yqhRowL0oziynZu3AuBJzNT6AxEZEaKjIjh18VxO7baOy+Vys3nbHnZs3UFZ/h4c5UVENFUQYriJbS6D5jIa9n7GqnfhE6y0RY3GnpxJ8rgJTJ4+lbmzp6ohkIiIDEt9DldXXHEF1dXV/PznP6eiooLZs2fz9ttv+xtSFBUV9QgeJ510Ek8//TQ/+9nP+MlPfsLEiRN55ZVX/HtcAfzoRz+itbWV66+/noaGBk4++WTefvtt/x5XYWFhPPvss/ziF7/A6XQybtw4br311oO6EA60moI9RAOjsice8VgRkeEqNDSE+SfkMv+Erk2QvR4v23btY9uWHZTu3UNr2X7CGssJ8zmJaa2EgkqaC9ax7n1zA+TWyCRsozMZPW48k6ZNZd6c6WoNLyIix70+73N1vApEL/tfffXLRLpbmHbd7Zx71skBHqGIyPDi8/nYvbeILZu2UbxnD82lhYQ2lBHubT/4WCy0RiRiG51B4tjxTJo2hXknTCc+bvA3ixcRkeFvSOxzNZLtKywh0t2CDwuLFs4O9nBERIY8q9XK1EnZTJ2U7b/P5/Oxr7CUzZu2sT9vD80lBdjrS4nwtBHTXgNFNbQXbWLzx7AJaA1PxDI6ncSx45mYO4V5c2eSEK/AJSIiQ5PC1VFat2YTAK1Ro4mLjQ7uYEREjlNWq5WJOZlMzMkEPu+/v7ConA0btlK4ezdNJQXY6kqJ9LSae3EV1+Io3sLWT2AL0BqegCUpg8SxOUzIncq8udNJHBUXtPckIiLSSeHqKBXu2okdCEkdF+yhiIgMO12t4c/237e/pJyNG7ZTsHs3jcX5ZuBytxDtqIOSOhwlW9j26Stsfaxb4MpWhUtERIJH4eootRXvIxbImDQ12EMRERkRxmakMjaj515cxWVVrF+/hcJdu2ko7qhwuZt7BK4eFS7/Gq5c5s/VGi4RERlYCldHod3hJLK5HIDZc2cGeTQiIiNXZloymWlL4ILDBa6SrgpXcR2O4i1s+eRlNtMZuDJJzB7PpNypClwiIhJQCldHYd3G7dgNL05rGDNyJwR7OCIi0k1vgauopJING7dSsKuXKYXFdTiKN7PlYzoCV6JZ4coez+RpU9WlUEREjpnC1VHYvsncPNiVoM2DRUSOB1kZKWRlpBwcuDZspWDXLhqLC7DVdwauzqYZm/1dClsiErGNziQpu2MfrhOmq5mRiIgckcLVUajau5soIE6bB4uIHLf8gevCrsC1v6SjS+GuvK4Kl6eVmPZaKKqlrWgTm1bAhs59uJIzGT1ugjY+FhGRXilcHY2q/QBMnD4tyAMREZFA8jfNuLCrS2GPtvDFnftwtZr7cO2voXX/RjZ+COux0BqZhC05k+Rx45k8PZd5c6YRHaXAJSIyUilcHUFxWRVRrkYM4ERtHiwiMuz11ha+oKiMDevNwNVj4+O2aiispqVwA+s/gLUdgcuenMXoceOZMmMac2fnEh0VEbw3JCIig0bh6gjWfLYRgJaIJJIS4oM7GBERCYpxWWmMy0oDzgHA5/N1VLi2sH93Hs2lBYTUlxLuae8WuNaz7gP4DCttUWbgSh43gSnTpzLvhGlERoQH902JiEjAKVwdQf6O7VgB+5jsYA9FRESGCKvVSk52OjnZ6cDnATNwdVa4ivJ201RSQGh9GeHedmJaq6CgiuaCdax9H1ZjpS1qNPbkTFLGT2DK9Fzmzs5V4BIROc4pXB1BS8fmwakTJgd7KCIiMoRZrVbGZ2cwPjuD7oFrb2EJmzZso2j3bppLCwltKCXc6yCmtRIKKmkqWMea92BVR+AKSckiOWe8ApeIyHFI4eow3B4PEQ1lAMw8YVaQRyMiIscbq9XKpJwsJuVkAecBZuDak1/Mpg1bKdqTR0tpIWENZYR1Bq78Spry1/YIXPbkTJLHTWDqTAUuEZGhTOHqMNZv3EmI4cZlDeWEmapciYhI/1mtViZPGMvkCWP99/l8PvL2FbF547beA1dBJc0F61jz/sGBa8r0qZygphkiIkOCwtVhbN20GQBHfDo2uy3IoxERkeHKarUyZWI2UyZm++/rLXCFNpT1mFLYYw1XZBL25ExGjzM3Pp5/gtrCi4gMNoWrw6jYk0ckEJs1PthDERGREeZQgWtPfrEZuPLyeq7haquCwipaCtez4QNY17kP1+gMkrLHMyl3CvNOmE5cbHTw3pSIyDCncHUYvspCAMZPmx7cgYiIiHDglMLzgQOaZuSZbeH9XQrbqmF/NW37N7LpI9iAhdaIBKxJGSRmj2fi1MnMPWE6iaPigvvGRESGCYWrQyguqyLaUQfAwoVzgjwaERGR3h2qaca+wlI2b9rG/rw9NJcUdmx83EpMey0U1+Io3szWj2Er0BI2CpIySMgax/ipU5g7ZxopyYlBfV8iIscjhatDWPHhSgCaI5NJTdF/MCIicvywWq1MzMlkYk4mnW3hAQqLytm4aSuFu/JoLCnEVldKpLuZaGc9lNbjKt3KzlWvsRNoDY3FSEgnLnMc2ZMnccKcGWRlpATtPYmIHA8Urg6hYMsmIoCI7CnBHoqIiEhAZGelkp2VChee7b+vtLyKDRu3k79zFw3FBVhqS4lyNRLlaoKKJrwVO9m39k32/Qva7VF4RqUSk55N5oSJzJw9jUnjs7BarUF8VyIiQ4fC1SH4SvcAMPmEE4I8EhERkYGTnppMemoynHeG/76q6nrWb9zGvp27qSvKx6gpIcpRR4SnFar3QvVeije9R/GL8JI1DGfcGCJTx5I2fgLTpk9lxvSJhNj1EUNERh6LYRhGsAcxGJqamoiLi6OxsZHY2NjDHrtjdwFv/fy7eLFy/aP/Jj4uZpBGKSIiMjQ1NDazYdMO9uzcRXVBPp7qEiJbq7HhO+hYj8VOW3QyoSmZpGSPZ1LuZE6YPVWt4UVkyOhLNugL/VqpFys/XgVAa1yagpWIiAgQHxfDmact5MzTFvrva3c42bh5J7u276QiPx9nZTERzZWEGG5im8uguYzGvZ+x9j34DAutEYlYk9JJzBpHzuRJnKDGGSIyzChc9aJ0xxaigdic3GAPRUREZMiKCA/jpIWzOWnhbP99bo+H7bvy2b5lB6X79tJaXkRoQ7nZGr69BoprcBRvZsensANoC4nBOyqNmPSxZE6YwIyZuUyeoHVcInJ8Urg6gNfjxV6xD4CZC+YHeTQiIiLHlxC7ndnTJzF7+iT/fT6fj8KicjZt2s7+PXtoLCnAWldOlKuRSHczVO2Gqt0Ub3yH4hfgFWsojtgxhKdkkjIuhym5k5k9cwqREeFBfGciIkemcHWAdZt3Eu5tx22xc/JJamYhIiLSX1arlZzsdHKy04GuToVVNQ1s2rydfbvyqNlfgLe6hMi2GkJ9LkIbiqChiPrdn7LqbfgEK20RCViT0hiVkc24yZOYNSuXzLTk4L0xEZEDKFwdYN3KzwBwJGYTER4W5NGIiIgMX8lJ8Zz9ucXwucX++9odTjZvzWPXjl1UFOTTXlFEWGMFYT6nf1qhq3gLu1fBbqDdHok7LpWo1ExSx+UwJXcKM6ZNIDwsNHhvTERGLIWrA1Tv3kYMkDRperCHIiIiMuJEhIdx4vwZnDh/hv8+n8/H3sIStm7eSfHevTSW7oe6cqKc9UR42oio3Qe1+6ja9iFVr8MHWGmLSsKWlE5CxliyJ05k5qypqnKJyIBTuOrG4XQRXlMIwNyTtN5KRERkKLBarUzKyWJSThZwjv/+hsZmNmzeyb7deVQVFuCqKvV3K4xprYLWKhz7N7LrU9hFZ5VrDJEpGYzJzmHilInMnD6J6KiIoL03ERletM9VN8s/XM2mP9+DwxbB7f94FpvdNsijFBERkf7werzs3lfE9m27KN67l+ayIqivIMpZj6WX431YaAtPgIRU4tKzyBg//v/bO9MgO64qz/9ye0vtVapNpbUkSzLygowwQsjYDFYH4IDADDNt8wGiGTrcTWMzjFnCprE9EN24bdMzBrOYgIkwH1BDuGNsD3SEut0iMGDUwsiAZWtfSiottS+vlrdl5p0P+TIr8718pcVVpe38Qjfy3nPOvXmzKqtU/3c3rrtuHWtXLZO/AwThCkbOuVoAXvvd7wGwO1bJL1RBEARBuAwxTIP167pZv647Yh/PTPLHPQc4vO8gA8ePkhs4RXJigKSToy43DKeHcU6/zvFX4DjwgmaRrWvDau2iZekKutes5vobrpWphYIgzIqIqxBjR/bSAHStv+GssYIgCIIgXD40NtRx25aN3LZlY2Dzt4jf8/p+Thw+wujJ47jDZ6iZHsJSRazSQcjZY79n76+9c7lyRppCQzup9iW0LVvJqrWrufGGdbS2NF20ZxME4dJBxFWJ8cwktWMnAdi8ZfNF7o0gCIIgCPNNdIv42wN7Ll9g34Gj7Nt7kDPHjjJx5iT6WB81+TFSTpbU6HEYPc74gd/yh3+HPwDTVh12Qwfp9i7aV6xk9dpreOv1a2lqrL9ozycIwsIj4qrES7/+HQYuU4kG1l/bffYKgiAIgiBckaSSCW668VpuuvHaiD0zMc2e1w9y6OAh+o/3MN1/EnO8n5riJDXFSRiehOEjjO77Nb/fDr8HphINuA3tpNu7aFu+glVrVnHDdWtZ1Nx4cR5OEIR5RcRVif27d2MAetcadF2/2N0RBEEQBOESo6G+hi2bN7Bl84aIfWBojNffOMDRQ0cYPHGc3OAprMwAaXua2kIGhjIwdJjRvbB7O+wGpq167IY20m1dtC5bTvc1q7h+/Ro62hddlGcTBGFuEHFVYrpnP/XAyhs3zFmbmUKGAyMHODh6kAMjBzieOY4ifnNGLWYPI03TAp+maUGMhob3T4v6QjZd0yM2v+zH6poeyft+Pw/E2gObpqGjV9gjqeQ3dMO7agaapmFoM+XyazhW13RM3ZzxaQa6rmNqZtCuqZkYuhH4/bypm0HZ1MzgaykIgiAIc017axPvvW0T771tU8R+pn+Y1984SM+RIwz1niA3eDoQXTXFCRiegOGjjO+HP74If6S0XXxdG4nWTlq6lrJsVTdvecs1dC/vkg9/BeEyQMQV3i+/uql+AN592zsvuB3btfnng//My6df5uDIQU5PnZ6rLgpvEl+g+aKrXHyFRZmlW0He1D2fqZtYmhW1aWZQtvQZn6mbsb7wtcJmWBX+SDnk98WvIAiCcGmzuGMRizs2w3uja7n7B4Z5fe8hjh0+ytDJXrIDpzEzA9QUJ7xDkceOw9hxpg/v4sCv4ABQ1CyytYswmjto6FzC4uXLuWbtKt6ybhU16dTFeUBBECoQcQW89NJONGAi3cqKpYsvqI2e8R7+9uW/5bXB1yL2rtou1rasZV3zOlY3rSahJyrq+qNZwVWpqE0R61co/GPK/Hzc1VUuAK5yK+yRfMgWKaNwXKfC7ygn4nOUg1Le1VXuTIyq9FVc3Zk6trIDn2/3845ygnwQF7L7z1qO33bRLV7Q9/dSwtQ8MVYuxBJGoiJvGiYJPREIND8fxPq20rXcnjASM/5SPmxLGsmgbOoyQigIgnAudLQv8qb/vSf6ge7Y+AR79h7i6KGjDPSeYKr/NNr4ADW5UW/3wsk+mOzD6f0TJ1+Bk8Av0MgmG3EbWkm1LmbRkiUsW7mSa9etZvnSDhntEoQFRsQVcORPfyAFJJevO++6rnL5p/3/xJO7nyTn5Ki36vnUDZ/ixrYbWdu8lsakLFhdSJRSEdFlKzsQX7ZrY7t2IM6KbjEi1MJ+2/XqFVUxyPv+cGxcuegWI76iU4zmS/FFpxjEFt1o3r8WnELFVFJb2di2fZG+wtXR0OKFV1iUlfJhX9JIYulevG8vv/r5cCqP89sRgScIwuVKU2M97978Nt69+W0RezaXZ//BYxw6eJQzx4+T6TuFPdpPamqYhFugNj8Gg2MweJjMPngDLxX0BLmaFoymduraF9O+dCmrrunm2nWraWmSXQwFYT4QcQXYvQcBWHvT284SGeX05Gkeevkhftf3OwA2L97M17Z8jc7azjnvo3BuaJqGpVle4Qo5B9oXgkEqibKCW5gRZk6lL7CVRFq4vu8vuIUZX6gcru+XC85MnbyTD4Sij0KRd/LknTxcpAFCDa1CeKWMlHc1U7EiLWkkSZqVNj8+ZaSqlkXUCYKwEKRTydjdC13Xpfd0P/v2HaG3p4fhU6fIDZ5BzwySLmRIuAUSpdEudfI1+l+FfmAnkDVrKdYtwmpup6FjMZ1Ll7Jy9QrWr1tFXW3NRXlOQbgSuOrF1aGjvdTlR3HReM97zm29lVKK5w4/x+OvPM5UcYq0mebzGz/Pn6/7c/kDS5hzDN1bG5bi0ptT7yo3Ir78lHfygTArz4dj/Hq+KCtvw/fnnBxFpxiJ8/N5Jx/0R6HIOTlyTm5Bvw66plcIs6SR9IRYSbj5+ZSRqvBHbGYqIuD8mLSZDurIFExBEMA7p2vF0sWlJQ23RHzT2Rz7DhzlyOEe+np7yfSdpjjaT2JqmJSdJW1PkR6bgrETFI9BL176NaUzu2oXYTW30dCxmI4lS1jRvYJr166Uc7sE4Sxc9eLq3/7l3wCYrF98TmdO2K7N13Z+jecOPwfATe038Xdb/o7lDcvntZ+CcCmia7onAC6i8FNKUXSjwivn5GYEmB21R+LsXESkhePzTj5oJ+fkyNv5oL5f15+y6SqXrJ0la2cX5JkNzYiIr5SZiuR9X9pMz4gzI10RF1c3EHGldmQDFUG4PKlJp9i4YT0bN6yv8A2NjLF33xFO9Jxg4ORJJgfP4IwOkpweIenmvTO7xiZh7DjFY97arpPAy5R2M6xpwWxqpba1g9auLpatXM41q1ewpLNV1ngJVz1Xtbjaf6iHiZd/jgV0vf2Ws8bn7Bxf/NUX+WXvL9E1nc/e9Fn+4rq/wNCvkPlngnAZomlasC6rnoX7RNUXdRHhZc+IsrAYC4s4P59zcjP50DVcJ9xOWMw5ymHanmbanp735wyPrqXNdES0+cJsNhHn1ykvB1cjLSNxgrDAtLY0ceuWjbBlY8Tuui59AyMcOHSM3p4TDJ46xdRgH874IMnpUZJOztvNMDMNmZOoEzD4KgwCr+LtaJhLN0H9IlItbTR3dnqjXiuWsWb1cupq0xfjcQVhQdGUv93cFU4mk6GxsZHx8XEaGhpwbIev3fvfaRjtIdO4lIe/+x0Ms7pIGs+P89lffJZXB14laSR5/NbHee/y9y7gEwiCcDXji7msnY2IL1+YlduzxWy83c5GxFzWyXoCzi75nNyC76ppaEbF6FnKSJG20hFbnKgrt9WYNRVtpc20rIsThDlgYHCUA4eP0dvTy+Dp00wM9FEcG8ScGiFdnIw5sTNK1qylWNOM0dhCTUs7LZ0ddC5ZwooVS1i1cinpVHJBnkMQoFIbzBVX7cjVD//PNhpGe7A1k//6uS/OKqwGpgf4qxf/isNjh6m36nnq9qfY2LGxarwgCMJcEx6hm28c1wmEmS/ggmspZZ1sIMiCWDtXIeL8euGyn3eU491POUwVp5gqTs3bM+maHhFigTCLG1ELCbtwXNX40gicZVjz1n9BuBRob2umva0ZNlduADY5leXwsV56jp2g/9QpRvv6yI0MwMQIqewYlip667wyU5A5Cb0w+icYBfbhnTqTteqwa5owGlqoaW6jqb2D9q5Oli1bwuruZTTUy0YbwqXPVTlydapvhBce/h9YqkjNrR/l05/5ZNV6x8aP8dcv/jWnp07Tlm7je1u/x7qW89+yXRAEQYhSdIqBSAuPnIXFmG8Li7ewLWt7I29hsReOC+9oOd+YmhmdKlkSXeVTIyMjbCGxFo4LRF6ZzdJFwAmXH67r0j84yuGjxzl54hSDZ84wMdhPYWwIfXKUVD6DeQ4/qzkjTTHVAHXNJJtaqF/URktHB51dnaxcvoRlSzuwzKt23EA4T+Zr5OqqE1cjwyM8+eWv0DB6nEzTch7+zlNVR61eH3qdv/n3v2E0P8qKhhV8/8++z5K6JQvcc0EQBOFCKbrFihG3cgEWJ9am7enYkbeskyVbjIpAfwRuIQgLOH+ELbzOrXx0Lla8xfjD5YSekCmUwoLiui6n+oY4eqyXU72nGOrrY3JogMLYCEyNksyNk3ALZ28HjZxVh51uQK9rJtnYTP2iVlra2+nobGfJkk5WLFtMKjn/MwCESx8RV28S/wv4v//X0zj/8TOKmsmH/uc/ct21q2Pjnzv0HH+/6+/JO3muW3Qd3936XVpSLbPfJDsGJ3bC2AnIjpalMchnoNqXe9b/yEK+SFxZnXKfVhanaWX5Kv7Ap81uC7cTiZvtqle2GS5r+uzxgZ+oP1wvyId9lMrl8aFyeRthe8RfxRdrrxZXzW/Ex+hGfIw+S13dCLVvlNlDbQuCcMEopbBdu2LkLBBtIYHmC7a4KZKBwCtmK6ZVZu0srnIX7Jk0tNiNS2bboCRuB8rwzpN+bHgnS1kHJ5wPA0NjHD3Wy+lTZxjs6yMzNER2dAhnYgRzepxUcRKds/9Jq4CcWYOdrIfaRqyGZmqaWmhc1EJLWxudnR0sW9pBZ9uiWZeMCJc/suZqjhj7zc+oN6Hx1jtjhVXWzvL1XV/n+cPPA3DLklv4xm3foNaqrWwsPwkn/gN6fgXHfgVn/gQL+B+gILx5wsLNKBNlRtQXtgdxRkjkGWW2uLhSXi+/nxEVfRGbEW1fNyttFbF6KC7kr9quWdmPiM2sjNXNsr6a0XaFqwJN07AMC8uwaEjM3X/OYcKbmZSPpgWjbaUNSsIjbuERtvKpldP29MxGJ6UROdv1pmUp1IIcLRAWcRVHC4R2nwyfBecfEVBep+JcuFK94ABwGY277GlvbaK9tQluviHWX7RtTp4e4PiJU/Sf7md4YJCJ4UFyYyO4k2MYuQypwiQGLml7GuxpmOqHAXDx1n6NAkdK7Tno5C1PhGk19Zh1TaQbm6hvbqG5dRGt7a0s7mxjaVe7HLosRLjqxJWlimSaVvO5ez5e4esZ7+H+l+7n0OghdE3nMxs+w1/e8JfRc17GeuGN52D/v8Cp34NbNkd40TXQcT2km0OpybsmG2ZGUc6Z0KcwkVEvdQ42FblE/TGxFfVUyK5i6oXqVLRT5arcWWKojImLr2YLruV+NxoTqVOKdZ2yWDWLzw3VJVoOYpz4fkXsbpnfiWnLBdctq382uxN9b2ZFVb7DwtwQiDuzUrCFhV+FWIsRdeVtRfyhmLi4iL3cFqoX23a5aDTP0rYZ314kToTn+RLezKQxefbzGC8UfwpltQ1KwiIubvTNPzogvI4ushlK6epPo1woEQczQm62g759wXa2g8CDmNAxBcEh4iG/qV91f2JdVCzTpHt5F93Lu6rGOLZD3+Awx0+coe9MPyODQ4wPD5EbH6U4MQrTGaz8BCk7i4HrnfdVnITJMzDgtTFRSidC7Rb0BAWrFjdVi56ux6xrIFXfSF1TE00tLTQvaqatbREd7a10tDbLiNgVzlX3k1/UTO66v3J3wH/t+Vce+e0jTBWnaEm18Pitj7Np8SbPOdEHbzwPb/xf6N0VbbBpOXTfCitvhe53Q0P1H2pBWDDCArFceFXknVLeL6sYnztLPT8f01bF/cJ+VWlzffFZbgu3b8fYYmJdu0r9UGwkb89yn5h7nG2U2rUBG5z8gnzLLx+02QVYRHzGiMeI6KsmEsuEYVyd2PvExcYJy9niz9Z2uN1LayTF0i2shDXv58XFibi4fPmRA+XHD1SUy86Fyzm5YDrlQgo5H/+w73LRFZcSRsIbYTMSpAzv6tvjYsvzvvj286YmZ8fFYZgGSxa3s2Rx+6xxuXyBU2cGOHWqn4GBIUaHBskMj5AdH8OeGkdNT2DkJ0kWpzCVQ8ItkMgXID8K4zPtTJbSyVDbLhoFM0XRqkUla9HTtZi19aTq6knXN1Lf1EhDUyPNzU20trbQuqiZRU31IsguI646cdW45UOsX9cdlAenB/nhnh+ybf82AN7W/jaeuO0J2nNT8LsfwN4XoOc3zIwEaLBiC1x3J6z5M2heudCPIAhnR/PXrelchT/mC0O5OAyLubhyNcE2W1z4GrmPG/IVZ0RspF55XFkbFW3ZIXs43ganWl0HnGJU0Pqp6uipKvV5Yc/SuiSJHTmcTTTGibjZRhBnGVGcTbzGjaqed73qI5+WbmDpBvVGGsy6eROb/nq48sO8A0F2Dgd9h2Oqxfu+vJOnENp0IXLY9wJ/xqKhxYquwKZ7ecuwPJueCGIj+VDZ0q34GN9vWF5MWfzluLYulUyweuVSVq9cOmuc67qMjGU4eXqAgf5BRoZHGR8ZZnJsnFxmjOJUBjU9iZ6fwipOk3Tz6ChSdpaUnYXsEIzNtJctpYHy+6BRMFLYVgrXSqMla9DTNVjpWhI1daTq6qipr6e+oZ76hgYaGxtobm5gUUsjzQ0izBaaC9rQ4jvf+Q5PPPEEfX19vPWtb+Wpp57iHe94R9X4Z599loceeoienh7WrFnDY489xh133BH4lVI88sgj/OAHP2BsbIwtW7bwve99jzVr1gQxIyMj3HffffzsZz9D13U++tGP8s1vfpO6urpz6rO/aG14aJg++nip9yV+efKX7B3eG8T8tyW3c18hgXlkBwwfjjaw9B1w/X+G9XdCw2Kv346DOzGBk8ngZCZwJzI44xlUPoeybZTtoOwiOA6qaKPcud1R6oJ+WZ3rxhnV6pTXr1plljrnex+tMiZov9oGH7P1s2obMW0GMcTXmbXuBdYJ969qnVmeJa79cF/i2gw9Z2x/Y+5fcc/y9ma7Z7BJSVlMRTtVnq0sbiarVcZVaycUp8XVC23comlV2ta00t4q8W1fbn9QzCnlI4AVwi/G5tpRkTZb/SBfLi5DySlvo6xOXH8ideLuWd7fMiEatvnCUzg3tPIpsFWmxM4aU6Ve1Wm55dNgy9dlltqrWPMZU1fTcTWdggZ55ZLH9a7KJY9DXrnklENBOeSUTd61ySuHQumad4vkle1d3aJn9/NOgZxboOAUKZTKebfgCTqnQM7JBWvmLkVM3YwVXZbhibG4vKVbFXm/nqmbM/5QTLnd1E0sw8LUyq6lOFM3vRTyz+fv7WwuT//ACP2DwwwPjTA6PMLE+DjTmQz5yQyFqUnc7CRafgqjkMWyc1jqzX0QpYCinsA2kjhmEmWl0BIptGQaM+WlRCpNIp0mla4hXVtDTV0ttbW11NbWUF9fS31dLQ0NddTXpa+ore4vmd0Cf/rTn/KJT3yCp59+mk2bNvHkk0/y7LPPcuDAAdrbK4dZf/vb33Lrrbfy6KOP8sEPfpBt27bx2GOP8eqrr3L99dcD8Nhjj/Hoo4/yox/9iO7ubh566CH27NnD3r17SaVSAHzgAx/gzJkzfP/736dYLPLJT36Sm2++mW3btp1Tv/0v4H/6wW2M6hMR33Uk+dTQAJtHJ3DyOk5BxymauHXX4NSuxk4uw8na2CNjOCMj2KOjuKMjuJPzd+ClIAhXENXEV9gfScziixF0ROtGy+E2YwRkuc9vw7eH2w/XI65elfYi95ulTnnfmemH99zhe4fraVXrecJZrxIf7Zdfr1p7FfZq94/cWysN4qlQcr3b+es6/aR8X/k6V2+Kr9eT0JpO3JDPXyfqT1d1Q/ZSG65T8nv1ND8+WENaqqNm2g3svlgmHBuaSqxcNOWE+heejuuiEaoTvNuUnrX85yVyCWUATc2YIvayJjQ1i6+8nprFV6UeKvTOlFWJaT/2WULlinrh9mP9IaNmoOkGrm5Q0HQKhk5BNynoBnldp6gb5DWDgq55Cd27ajpFTSOvaaErFDSNAlDQoAieDSigKJauBU1RUAob5ZVLyVYuBRTOOa/7vfQwNQNT0zF008vrJqZuYGqeEDM0A8vPh+26H2thaIZ3LdkMzfdbQayhGeil+n7Zi9VLZe9ebtElO5EjO54jN5UjP5GjOJ3Hns5hZ/O4uTwql4d8Hq1QRC8WMO0CllPAnIdN1mzNxNYtXN3ENSyUkUCZFpqZKCULw0qgWwkMy8ubiSRWwsK0EliWhZlMkkgmSCQSJKwEiYQ3JTlhWSSSSZIJi0TSwrIskpaJYZqezbIwTQP9Atfumgk9Ip4vGXG1adMmbr75Zr797W8D3pDosmXLuO+++3jggQcq4u+66y6mpqb4+c9/Htje+c53smHDBp5++mmUUnR1dfH5z3+eL3zhCwCMj4/T0dHBM888w913382+fftYv349r7zyCm9/+9sB2L59O3fccQcnT56kq6tynVM+nyefnxmHz2QyLFu2jCc++f9IJ2J2/hMEQRAEQRCEKwSlbFB5lMqDKlRcPV8BVNGzUSyVC6W4Iqginsy+lARz6WgcQsfkBLaZD7u0UFk3u/jMD7+OlZyZInlJbMVeKBTYvXs3Dz74YGDTdZ2tW7eyc+fO2Do7d+7k/vvvj9je97738fzzzwNw7Ngx+vr62Lp1a+BvbGxk06ZN7Ny5k7vvvpudO3fS1NQUCCuArVu3ous6u3bt4iMf+UjFfR999FG++tWvns/jCYIgCIIgCMIVgaaZoJlovLlBBW8cxi6JsJLYUkVPvFEEZZfsNigvKT9funqxTsnmoJRT8jleGX+jKCewzYzEl+PbnVmX90b203bn56iMOM5LXA0NDeE4Dh0dHRF7R0cH+/fvj63T19cXG9/X1xf4fdtsMeVTDk3TpKWlJYgp58EHH4yIOn/k6r98CBqbE+iJBFoyiZaw0KwERkMDRn09WkJO7RYEQRAE4c2hgl1bw0eNzJRVjM3Pz8wpijuuRBGZdBS0MVNWQbnsuJSye6nymPK+BM8R6k/MESxBf1QopuI+RPoY27fQM1W0WeU5onHRfsW1XzFhK+5Imoq2y+4Rxg3tslv6i14FU3eV5w+m2RK1ub5ICPvdkJ1Su6H+BcfElE0fDtep+P7PtO2/lwqF6zreVbko5XoThpWLQqFcF7f0vQ1iULjB8yjc0vRkFeT9+nhtlOr6X0e3VJ7pogbKRGEGffJ/OhSU+qVQLtiuwsXFdb33yS29I64iuL8b+t66ofdOATVtCjOxMEeBXDmr0spIJpMkk8kKe8vtt83p0J8gCIIgCIIgCAJ4ExTPmdbWVgzDoL+/P2Lv7++ns7Mztk5nZ+es8f71bDEDA9GNKW3bZmRkpOp9BUEQBEEQBEEQFpLzGrlKJBJs3LiRHTt2cOeddwLehhY7duzg3nvvja2zefNmduzYwec+97nA9uKLL7J582YAuru76ezsZMeOHWzYsAHwpvDt2rWLT3/600EbY2Nj7N69m40bNwLwi1/8Atd12bRp0zn13R+SzGQy5/PIgiAIgiAIgiBcYfia4AJOpZoddZ785Cc/UclkUj3zzDNq79696p577lFNTU2qr69PKaXUxz/+cfXAAw8E8S+//LIyTVN94xvfUPv27VOPPPKIsixL7dmzJ4j5h3/4B9XU1KReeOEF9dprr6kPf/jDqru7W2Wz2SDm/e9/v7rpppvUrl271G9+8xu1Zs0a9bGPfeyc+33kyBF/gq8kSZIkSZIkSZIkSZIkqSNHjpyvHJqV815zdddddzE4OMjDDz9MX18fGzZsYPv27cGGFCdOnIjsP/+ud72Lbdu28ZWvfIUvf/nLrFmzhueffz444wrgS1/6ElNTU9xzzz2MjY1xyy23sH379uCMK4Af//jH3Hvvvdx+++3BIcLf+ta3zrnfLS0tQf8aGxvP97GFKwB/U5Pe3l5Zd3eVIu+AAPIeCPIOCPIOCN7RT8uXLw80wlxx3udcXa7M1172wuWDvAOCvAMCyHsgyDsgyDsgzN87sDB7EgqCIAiCIAiCIFzhiLgSBEEQBEEQBEGYA64acZVMJnnkkUdiz74Srg7kHRDkHRBA3gNB3gFB3gFh/t6Bq2bNlSAIgiAIgiAIwnxy1YxcCYIgCIIgCIIgzCcirgRBEARBEARBEOYAEVeCIAiCIAiCIAhzgIgrQRAEQRAEQRCEOUDElSAIgiAIgiAIwhwg4koQBEEQBEEQBGEOEHElCIIgCIIgCIIwB4i4EgRBEARBEARBmAP+P7uUXRRsX3NFAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# baseline + causal encoder + encoder next token prediction\n",
    "# train_ds, val_ds = load_datasets('librilight-mlang-t2s/*.tar.gz', 150000, vq_codes=512+1)\n",
    "model = make_model('base', dataset=train_ds, frozen_embeddings_model='vqmodel-medium-en+pl-512c-dim64.model', tunables=Tunables(weight_decay=1e-3, encoder_depth_ratio=.5, embedding_projector_lr_scale=5, cps_input=True)).cuda()\n",
    "train(\"tsar-wx\", model, train_ds, val_ds, half=True, bs=32, lr=model.tunables.lr0, epochs=8,\n",
    "      warmup_steps=1500, weight_decay=model.tunables.weight_decay, clip_gradient_norm=model.tunables.clip_gradient_norm,\n",
    "      table_row_every_iters=50000, run_valid_every_iters=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e4b791cb",
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save_model('t2s-.1enclm-base.model')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "cf3b6015",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "python3",
   "language": "python",
   "name": "python3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
